3

我开始在 Windows 系统中使用 git。我使用了 Git Desktop 附带的 Git Shell。此命令行工具始终显示您当前所在的分支以及 git 状态的简短彩色形式(未跟踪文件的数量、更改的文件数量、已删除文件的数量)。我发现这真的很方便。

现在我将系统完全更改为 Linux,但没有发现任何类似的东西。有没有办法像 Windows Git Shell 一样教 Linux bash 显示分支和状态?我目前正在使用 Xubuntu (16.04) 终端。

4

3 回答 3

6

根据GIT-SCM book,假设您正在使用bash,您可以使用git-prompt.shgit 或发行版中的其他包管理器提供的脚本。

. ~/git-prompt.sh
export GIT_PS1_SHOWDIRTYSTATE=1
export PS1='\w$(__git_ps1 " (%s)")\$ '
于 2017-05-29T08:07:44.450 回答
5

TL; Ubuntu 20.04.1 上的博士

将此添加到您的~/.bashrc

source /etc/bash_completion.d/git-prompt
export GIT_PS1_SHOWDIRTYSTATE=1
export PS1='\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]$(__git_ps1 "(%s)")\$ '

细节

此答案适用于想要增强 Ubuntu 20.04.1 提供的原始提示的人。

外壳由git-core包提供

source /etc/bash_completion.d/git-prompt

export GIT_PS1_SHOWDIRTYSTATE=1需要在当前状态被修改时显示。

最初的提示是:

export PS1='\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

因此,您可以通过在末尾添加 git 状态来增强它:

export PS1='\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]$(__git_ps1 "(%s)")\$ '
于 2021-03-18T11:10:52.817 回答
-1

我知道你的意思。在 Windows 中,安装 Git 后,您将获得Git Bash Here. 当你启动它时,会出现一个终端,并且提示会有颜色。[我看到的提示是:username@machine MINGW32 /C/Working/GitTutorial (master)。username@machine 为绿色。MINGW32 为紫色。路径为黄色。分支是蓝色的。]

现在如果你的系统是 Unix/Linux,是的,当你打开一个终端时,你可以让颜色有颜色。只需谷歌并找到“bash 提示”,我就会得到https://wiki.archlinux.org/index.php/Bash/Prompt_customization

我相信通过更多搜索,您可以在 Unix/Linux 中进行提示,以准确查看您的要求。

于 2017-05-29T08:10:10.657 回答