Git pelengkapan otomatis tidak berfungsi dengan homebrew

12

Ini pengaturan saya:

brew install git bash-completion
Warning: git-2.1.3 already installed
Warning: bash-completion-1.3 already installed

Dalam .bash_profile:

if [ -f $(brew --prefix)/etc/bash_completion ]; then
    . $(brew --prefix)/etc/bash_completion
fi

Tapi saya masih belum memiliki pelengkapan otomatis untuk perintah git. (Saya menggunakan macports sebelumnya, tetapi benar-benar menghapusnya karena saya tidak bisa mendapatkan perintah git untuk melengkapi otomatis apa pun yang saya coba.)

Saya menggunakan OSX 10.10

qed
sumber

Jawaban:

10

Untuk Yosemite, setelah saya memutakhirkan ke git 2.1.3 dengan homebrew, ini berfungsi di .profilefile saya ( .bash_profileatau serupa juga akan bekerja):

# git tab completion (homebrew)
if [ -f `brew --prefix`/etc/bash_completion.d/git-completion.bash ]; then
    . `brew --prefix`/etc/bash_completion.d/git-completion.bash
fi

Saya dulu git-prompt.shada di sana, tetapi mengubahnya untuk git-completion.bashbekerja untuk saya. ymmv.

boorad
sumber
3

Coba unduh langsung di direktori home Anda:

curl -O https://raw.github.com/git/git/master/contrib/completion/git-completion.bash
mv git-completion.bash .git-completion.bash

Kemudian di .bash_profiletambahkan Anda yang berikut ini:

if [ -f ~/.git-completion.bash ]; then
    . ~/.git-completion.bash
fi
jherran
sumber
1
Apakah ini wget https://raw.github.com/git/git/master/contrib/completion/git-completion.bash && source git-completion.bash, belum beruntung.
qed
@qed, jawaban itu .bash_profile bekerja untuk saya.
Maragues
Bahkan . ~/.git-completion.bashlangsung di shell tidak berfungsi. Juga tidak ada pesan kesalahan.
qed
1

Pada sistem saya (10.10.5), saya memperbaikinya dengan membuat symlink di /usr/local/etc/bash_completion.d/ ke bash_completion.d / git-completion.bash di direktori GIT. Dalam kasus saya:

cd /usr/local/etc/bash_completion.d
ln -s ../../Cellar/git/2.7.2/etc/bash_completion.d/git-completion.bash git-completion.bash

pastikan untuk memeriksa versi git yang terinstal dan ganti 2.7.2 dengan versi Anda.

Patrick van Efferen
sumber
Saya sudah memilikinya, tetapi masih tidak berhasil.
qed
Bersamaan dengan jawaban lain, melakukan ini juga bekerja untuk saya. Terima kasih!
Vandesh