Debian squeeze(6.0)で動作するGit(バージョン1.7.2.5)bashコンペレーションがあります。 Gitはaptitudeでインストールされ、コマンドラインのオートコンプリートをサポートする標準のdebianのbash
を使用しています。
さて、Git(1.5.6.5)を他のマシン(Lenny/Debian 5.0)にインストールしたところ、オートコンプリートはありません。
Gitのオートコンプリートが2番目のマシンで動作しないのはなぜですか?これを診断するにはどうすればよいですか?
私のマシンで完了作業を行うのは何ですか?ファイルを探しましたgit-completion.bash
しかし、それは私のマシンにはないようです。 Git completeはどのように機能しますか?
Git completeを他のマシンに持ち込むにはどうすればよいですか?
必要がある source /etc/bash_completion.d/git
git自動補完を有効にします。
私の.bashrc
これで完了です。
for file in /etc/bash_completion.d/* ; do
source "$file"
done
~/.bashrc
に次の行を追加します
if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
スクリプト/プログラム/etc/bash_completion
は既に/etc/bash_completion.d
のスクリプトを含んでおり、含まれているスクリプトに必要ないくつかの機能も定義しています。
不足している場合は、このパッケージをインストールする必要があります。そして、ログアウトしてログインします。
apt-get install bash-completion
DebianでGitのbashオートコンプリートを有効にする最も簡単な方法は、追加することです
source /etc/bash_completion.d/git
~/.bashrc
(およびターミナルを再起動します)。
こちらもご覧ください:「Pro Git」-> 2.7 Gitの基本-ヒントとコツ-> 自動補完 。
Notepad ++を使用して、〜/ .bashrcファイルを編集します。行の先頭に#を付けて、スクリプトの最後に行を配置します。ファイルを保存します。例:#source C:\ cygwin64/etc/bash_completion.d/git
'source'の後、 '/ etc /'の前にファイルパス全体を置くことを忘れないでください。たとえば、 'etc'フォルダを含むcygwin64フォルダは私のcドライブにあるため、ファイルパスはc:\ cygwin64です。/etcしたがって、bashrcファイルに含めた行は次のとおりです。
# source c:\cygwin64/etc/bash_completion.d/git
Bashrcファイルを保存します。 Cygwinターミナルを開く...ブーム!行く時間です。その後、次のコマンドを入力し、機能しました。 git clone git:\/\/github.com/magnumripper/JohnTheRipper -b bleeding-jumbo JtR-Bleeding
〜/ .bashrcファイルを誤って削除したため、gitのオートコンプリートが消えることがあります。 bashrcファイルがホームディレクトリにあるかどうかを確認します。そうでない場合は、いつでもコピーできます:
/etc/skel/.bashrc