ソースなしでGitでzshタブ補完を使用する方法は?

ソースなしでGitでzshタブ補完を使用する方法は?

使っています扱いにくいそしてああ、Ubuntu 18.04.2から。今、バージョン 2.20.1 にインストールされました。

ローカルブランチをリモート()にプッシュしたいときはいつでも、origin次のようにシェルでタブ補完を使用しようとしています。

git push origin fea<TAB>

タブの完了結果は次のとおりです。

git push origin origin/feature

しかし、押すことはできませんorigin/feature。私が本当に欲しいものは:

git push origin feature

にも同様に適用されますgit checkout

リモートブランチを正しく(?)完了するようにタブ補完を設定するにはどうすればよいですか?それとも何か抜けましたか?

答え1

これは git 自己完結と oh-my-zsh 完了の間の競合かもしれません。

ここで動作するソリューションを見つけました。 https://www.raphael-brugier.com/blog/fix-git-completion-zsh-mac-homebrew/

そのため、環境によっては.zshrcでgit補完を無効にする必要があるかもしれません。

compdef -d git

また、これらの問題のためにZshバージョンをアップグレードすると役に立ちます。Zsh 4.3.10以降で修正されたことが知られています

関連情報