git 명령의 ZSH 탭 완성이 매우 느립니다. 어떻게 끌 수 있습니까?


18

내가 입력하면 :

rm <TAB>

거의 즉시 가능한 완성을 보게 될 것입니다.

그러나 내가 입력하면 :

git rm <TAB>

git repo에 있으면 몇 초 동안 멈추거나 git repo 외부에 있으면 완료를 표시하지 못합니다.

이 동작을 어떻게 해결할 수 있습니까?

내 .zshrc에는 git과 관련이있는 것처럼 보이지 않습니다.


+1 이것은 <TAB>git를 사용할 때 뇌가 닿지 않도록 배티하게 만듭니다.
Christopher

답변:


26

나는 마침내 이것을 구글에 귀찮게 하고이 SO 답변을 생각해 냈습니다 . 이것을 다음에 추가하십시오 .zshrc:

__git_files () { 
    _wanted files expl 'local files' _files     
}

오랜 시간이 걸리는 일을 설명 하는 딥 메일 링리스트 스레드도 있습니다zsh .


1
이것은 나를 위해 작동하지 않았습니다. 다음 oh-my-zsh 플러그인을로드하고 있습니다 : plugins = (git gitfast last-working-dir zeus). 플러그인 후에 위의 기능을로드했습니다.
justingordon

1
나는 같은 문제가 있었다. 성공을 확인하기위한 주석 : OSX 10.8.5, zsh 4.3.11, git 1.8.2에서 .zshrc 항목이 모든 차이를 만들었습니다. 그것없이, CPU는 정기적으로 100 %로 고정되었습니다. 그것으로, 탭 완성은 다른 git 명령과 거의 같습니다. 감사합니다! :)
cweekly April

zsh 플러그인 앞에이 명령 을 입력 하십시오. 그렇지 않으면 빠른 자동 완성으로 이어지지 만 실제로 git 명령을 실행하려고하면 오류가 발생합니다.
시몬

1

또 다른 옵션이 있습니다 : 공식 Git zsh 완성 : git-completion.zsh . 에 다운로드하고 ~/.zsh/_gitfpath에 있는지 확인하십시오.

fpath=(~/.zsh $fpath)

이 스레드 가 다른 응답에서 언급 된 것이 흥미 롭습니다 . 나는 그 스레드를 시작했고 그 결과 공식 Git zsh 완성을 썼습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.