OSX의 git을 사용할 때 파일을 수정 한 후에 간단히 수행 할 수 있으며 git commit <tab>
파일 이름을 수정 된 이름으로 자동 완성합니다. 그러나 homebrew에서 최신 버전의 git을 설치하고 사용하면 해당 기능이 더 이상 작동하지 않습니다 ( <tab>
변경 사항이없는 파일을 포함하여 내가 어떤 파일을하고 싶은지를 누르 십시오.) ).
누구든지 왜, 그리고 그것을 해결하는 방법에 대해 약간의 빛을 비출 수 있습니까? homebrew의 git은 최신 버전이므로 사용하는 것이 좋습니다.
내 쉘은 zsh이며 설치 bash-completion
또는 zsh-completions
작동 하지 않습니다 (homebrew의 설치 후 지침을 따른 후에도).
또한 homebrew와 함께 git을 설치하면
Bash completion has been installed to: /usr/local/etc/bash_completion.d
zsh completion has been installed to: /usr/local/share/zsh/site-functions
그래서 그중 하나를 사용할 수 없어야합니까?
답변
당신은 찾고 있습니다 :
brew install git bash-completion
warpc의 의견에서 알 수 있듯이 ~/.bash_profile
homebrew의 bash-completion 작업을 수행하려면 다음을 추가해야합니다 .
if [ -f $(brew --prefix)/etc/bash_completion ]; then
. $(brew --prefix)/etc/bash_completion
fi
bash-completion 공식을 설치할 때주의 사항에 위의 내용이 언급되어 있습니다.
참고 :을 통해 Bash v4 이상을 사용하는 경우을 brew install bash
사용하려는 경우 brew install bash-completion@2
탭 완성을 활성화 ~/.bash_profile
하려면주의 사항에 설명 된대로 다음을 추가하십시오 .
export BASH_COMPLETION_COMPAT_DIR="/usr/local/etc/bash_completion.d"
[[ -r "/usr/local/etc/profile.d/bash_completion.sh" ]] && . "/usr/local/etc/profile.d/bash_completion.sh"
git, docker, youtube-dl 및 $(brew --prefix)/etc/bash_completion.d/
디렉토리에 포함될 수있는 기타 완료에는 추가 내보내기가 필요합니다 .
답변
다음은 터미널을 다시 시작할 필요없이 OSX에서 작동하는 git tab complete입니다.
curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash -o ~/.git-completion.bash && echo "source ~/.git-completion.bash" >> ~/.bash_profile && source ~/.bash_profile
답변
다른 사람이 내 멍청한 실수를 저지르는 경우 시도하십시오 brew install git
. 나는 git
Xcode와 함께 제공 되는 것을 사용하고 있었고 자동 완성을 얻기 위해 Homebrew의 자식을 설치하지 않았다는 것을 몰랐습니다.
답변
어떤 이유로 든 파일이 누락 $(brew --prefix)/etc/bash_completion
되어 @Graham Perks의 정답이 저에게 효과적이지 않았습니다.
내 경우에는 수정 사항이 끝났습니다.
brew unlink bash-completion
brew link bash-completion
답변
나는 실행될 때 $(brew --prefix)/etc/bash_completion
반환 된 것을 파악하여 문제를 해결했습니다 Permission denied
. 그래서 간단한 후에 :
chmod +x $(brew --prefix)/etc/bash_completion
이제 모든 것이 잘 작동합니다. 그래도 Homebrew가 bash_completion
설치시 파일을 실행 파일로 만들지 않는 이유가 궁금 합니다.
답변
작동하는 솔루션을 찾았습니다. 매우 최근 (16 시간 전에 작성되었고 2 시간 전에 커밋 됨)이며 homebrew 에서 직접 가져 옵니다 .
brew install git --without-completions
방금 시도해 보았고 마침내 의도 한대로 작동합니다.
답변
나는 같은 문제가 있었고 오늘 아침 에이 게시물을 찾았습니다. brew를 업데이트 brew update
한 다음 git을 다시 설치 하여 문제를 해결했습니다 brew reinstall git
.
그런 다음 homebrew 연결 프로세스를 차단하는 다른 파일에 대한 알림을 받았습니다 /usr/local/share/zsh/site-functions/git-completion.bash
. 파일을 제거하고 실행 brew link git
하면 문제가 해결되었습니다. 그것은 우리가 우연히 발견 한 나쁜 레시피 버전 일뿐입니다.