web-dev-qa-db-ja.com

zsh gitコマンドのオートコンプリートにより、gitブランチ名にOriginが追加されます

Gitリポジトリをローカルで複製した後、ブランチを「ABCD」に切り替えたいと思います。

$ git branch -a
* master
  remotes/Origin/ABCD
  remotes/Origin/HEAD -> Origin/master
  remotes/Origin/master

$ git checkout Origin/ABCD   #### <- Here is the problem!
Note: checking out 'Origin/ABCD'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b new_branch_name

HEAD is now at f2bf54a... Clean up README.md

git checkoutの後にTabキーを押すと、何らかの理由でオートコンプリートは常にOrigin/で始まるため、detached HEAD状態の警告メッセージが表示されます。

オートコンプリートnotを作成して、最初に「Origin」を追加するにはどうすればよいですか?

6
Anthony Kong

あなたが使えるzshの素晴らしいプラグインを見つけました。 oh-my-zshを使用している場合は、そのgitfastと呼ばれるか、zshのみを使用している場合は、彼のブログ記事の指示に従ってください。

著者が詳細に述べているように、実際にはかなり多くのgit完了の問題があり、彼の努力はそれらすべてを解決することです。これは、bashと同じように機能する1つの問題です。

https://felipec.wordpress.com/2013/07/31/how-i-fixed-git-zsh-completion/

oh-my-zshで有効にするには、.zshrcを編集し、プラグインの行を変更してgitfastを追加します

plugins=(git gitfast)
4
Asta