2017-09-15 5 views
0

git autocompleteの部分的に動作するバージョンはhttps://github.com/git/git/tree/master/contrib/completionでした。私はいらいらされていて、今は完全に壊れています。git autocomplete cacheをリセットしますか?

元々、オートコンプリートはすべてのgitコマンドとブランチを完了することができました。しかし、それは私が持っていたエイリアスを表示しませんでした。私はこれをたくさん回して修正しようとしました。私はそれを打ち切ってエイリアスやブランチをオートコンプリートしないようにしました(git checkout <TAB><TAB>は多くのブランチがある場合にのみHEADを表示します)。それから、私は本当にそれを壊してしまった...

私は__git_complete map git_mapを実行したと信じています。mapは私のgitconfigファイルで作成した別名でした。さて、私はgitのオートコンプリートをしようとすると、以下に示すオプションの奇妙なリストしか表示されません。これらは、rebaseのようないくつかのコマンドと、私のシステムとグローバルファイルの間で持っているエイリアス、s(システム)とmap(グローバル)、そして私が完全には分からないものです。

git <TAB> <TAB>

a      cm     master 
aa     d      mergetool 
ac     filter-branch   p4 
acm     gui     rebase 
addnw     imap-send    request-pull 
alias     instaweb    s 
au     l      send-email 
bisect    lg     spull 
c      ll     spush 
ca     llg     stash 
citool    map     submodule 
clang-format-mp-3.8 mapall    subtree 
clang-format-mp-3.9 mapblame    svn 

だけで、すべてのオートコンプリートオプションをリセットする方法はあり


。私のシステムを再起動し、完了スクリプトを再ダウンロードすると、何もできませんでした。それはツールがまだ機能しているようだが、私はそれが利用可能なコマンドを壊してしまった。オートコンプリートツール用にリセットできるキャッシュがある場合は、元の状態に戻すための十分なコンテンツがあります。

私はOSX 10.10.5、GNU bashバージョン3.2.57(1)-release(x86_64-apple-darwin14)、gitバージョン2.14.1です。


EDIT:私は、私は本当に物事をflubbedことをしたと思うことは__git_complete git __git_mainです。

答えて

0

私はパスの問題があると思うし、Xcodeのコマンドラインツールに付属のgitがいくつかのオプションで使用されていて、正式なgitのリリースが他の場所で使用されていた。私は正確に何を忘れているが、Appleが出荷しているgitは機能が不足しており、2.14.1だったときに正式なバージョンに置き換えられた。

gitの最新の夜間バージョン(git version 2.14.1.536.g6867272d5)を公式githubリポジトリとビルドからダウンロードしてしまいました。私は、このバージョンのgitがオートコンプリートスクリプトで正しく動作しなければならないと考えました。次に、パスを更新して、 "〜/ bin"(デフォルトでmakeファイルからgitがインストールされている)を先行させて、/etc/pathsの最初の行にします。

私のgitオートコンプリートは、コマンド、ブランチ、エイリアスを正しく検出します。私は他の接線に関連した質問に答えをいくつか知っていますが、アップルのバージョンのbashから離れていくという解決策がありましたが、それは必要ではないと私は思います。

奇妙な余談:私も、私がして上で、そのリストに表示されて不慣れだったエイリアスを持っていたシステム全体gitconfig(/User/NAME/etc/.gitconfig)ファイルを(作るのない思い出を持っていないようなasaa、消滅したものはすべて元に戻しました。

関連する問題