例如,在一台新的ubuntu机器上,我刚刚运行了sudo apt-get git,在输入例如git check[tab]时没有完成。
我在http://git-scm.com/docs上没有找到任何东西,但IIRC完成是包含在这些天的git包中,我只需要在我的bashrc中正确的条目。
例如,在一台新的ubuntu机器上,我刚刚运行了sudo apt-get git,在输入例如git check[tab]时没有完成。
我在http://git-scm.com/docs上没有找到任何东西,但IIRC完成是包含在这些天的git包中,我只需要在我的bashrc中正确的条目。
当前回答
Ubuntu 14.10
安装git-core和bash-completion
sudo apt-get install -y git-core bash-completion
对于当前会话使用情况 源/usr/share/bash-completion /完成/ git 在所有会议上都开着 Echo "source /usr/share/bash-completion/completion /git" >> ~/.bashrc
其他回答
在Github的Git项目中,他们提供了一个bash文件来自动完成Git命令。
您应该将其下载到主目录,并强制bash运行它。这只是简单的两个步骤,并在接下来的博客文章中完美地解释(一步一步地)。
代码担忧者博客:autocomplete-git/
我已经在mac上测试过了,它应该也能在其他系统上工作。您可以将相同的方法应用于其他操作系统。
macOS通过Xcode开发工具
在目前发布的所有macOS的答案中,这只在jmt的一个非常简短的评论中提到…
如果你已经安装了Xcode开发工具,那么你不需要下载任何新工具。
相反,您只需要定位已经存在的git-completion。Bash文件并在.bashrc中获取它。检查以下目录:
/应用程序/ xcode /内容/开发/ usr / share / git-core /图书馆/开发/ CommandLineTools / usr / share / git-core
如果做不到这一点,git本身可能能够帮助您。当我像下面这样运行git配置时,git报告了一个来自gitconfig文件的设置,该文件与我的git-completion.bash位于同一目录:
$ git config --show-origin --list
...
file:/Applications/Xcode.app/Contents/Developer/usr/share/git-core/gitconfig credential.helper=osxkeychain
...
或者你也可以在你的机器上用蛮力搜索,然后买杯咖啡:
$ find / -type f -name git-completion.bash 2>/dev/null
因此,我在~/.bashrc中插入了以下内容:
# Git shell completion and prompt string on macOS
_git_dir="/Applications/Xcode.app/Contents/Developer/usr/share/git-core"
if [ -f "${_git_dir}/git-completion.bash" ]; then
source "${_git_dir}/git-completion.bash"
fi
if [ -f "${_git_dir}/git-prompt.sh" ]; then
source "${_git_dir}/git-prompt.sh"
fi
unset _git_dir
注意,这也是git提示字符串脚本的来源,因为它位于同一个目录中。
(在macOS Catalina中测试)
你看到的大多数说明都会告诉你如何下载
https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash
在你的bash启动脚本中,比如。bashrc。
但这有一个问题,因为它引用的是主分支,这是git-completion.bash的最新版本。问题是有时它会崩溃,因为它与你安装的git版本不兼容。
事实上,现在它将被打破,因为主分支的git-completion。Bash有需要git v2.18的新特性,包管理器和安装程序还没有更新到git v2.18。你会得到一个错误未知选项:——list-cmds=list-mainporcelain,others,nohelpers,alias,list-complete,config
因此,最安全的解决方案是引用与您安装的git匹配的版本/标记。例如:
https://raw.githubusercontent.com/git/git/v2.17.1/contrib/completion/git-completion.bash
注意,它有一个v2.17版本。而不是master。然后,当然,要确保在bash启动脚本中提供源代码。
在Ubuntu 22.04中,只需在.bashrc或.zshrc后面添加这一行即可
source /etc/bash_completion.d/git-prompt
窗户
我最终在Windows 10命令行(cmd)上的工作原理:
安装叮当声 git-autocomplete副本。lua文件到C:\Users\<username>\AppData\local\clink目录 重新启动Windows