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

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.


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

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.


Saya sudah memilikinya, tetapi masih tidak berhasil.
— qed

Bersamaan dengan jawaban lain, melakukan ini juga bekerja untuk saya. Terima kasih!
— Vandesh
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.