git命令自动完成选项卡不在mac上的子目录中工作

时间:2015-11-25 05:35:19

标签: git macos

$ git co <tabbing not suggesting commands like commit etc.. >

在根文件夹中,它工作但不在子目录中

2 个答案:

答案 0 :(得分:2)

引自:https://git-scm.com/book/en/v1/Git-Basics-Tips-and-Tricks

  

自动完成   如果您使用Bash shell,Git会提供一个很好的自动完成脚本,您可以启用它。直接从https://github.com/git/git/blob/master/contrib/completion/git-completion.bash的Git源代码下载。将此文件复制到您的主目录,并将其添加到.bashrc文件中:

source ~/git-completion.bash
  

如果要将Git设置为自动为所有用户完成Bash shell,请将此脚本复制到Mac系统上的/opt/local/etc/bash_completion.d目录或/etc/bash_completion.d/目录中在Linux系统上。这是Bash将自动加载以提供shell完成的脚本目录。

答案 1 :(得分:1)

有多种方法可以实现git auto-complete,我认为以下步骤很简单并且对我有所帮助。

步骤1 :在Mac计算机中创建文件(~/.git-completion.bash)并从https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash添加内容


> vi ~/.git-completion.bash
> copy-paste the content from linked shared above link
> Save the changes ( Press 'esc' button then press ':' then 'wq' then 'enter')

或使用简单的curl命令

> curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash -o ~/.git-completion.bash

步骤2 :将文件~/.git-completion.bash~/.bash_profile

链接
> vi ~/.bash_profile
> add following code in ~/.bash_profile
if [ -f ~/.git-completion.bash ]; then
  . ~/.git-completion.bash
fi
> Save the changes ( Press 'esc' button then press ':' then 'wq' then 'enter')

第3步:执行新添加的git-completion命令

> ~/. bash_profile

第4步:现在您将能够看到git自动完成功能,只需键入git br并按tab即可,现在您应该能够获得完成的命令{{1} }或要完成的选项列表。

参考- https://apple.stackexchange.com/questions/55875/git-auto-complete-for-branches-at-the-command-line