Macos 有没有办法在Mac终端提示符中添加当前工作目录/当前git repo/分支

Macos 有没有办法在Mac终端提示符中添加当前工作目录/当前git repo/分支,macos,git,terminal,prompt,Macos,Git,Terminal,Prompt,第一次海报 这是在本周的工作对话中提到的 当您远程连接到git时,是否有一种方法可以在终端提示符中显示当前工作目录/当前git repo/分支 显然,linux用户可以使用linux/vim脚本,我想将这种shell脚本添加到我的配置文件中 目前我正在使用此页面中的一些信息在本地解决这些信息 提前感谢。获取git完成脚本的副本。您可以从git本身获得它,或者如果您手边有Linux设备,您甚至可以从那里复制它(它可能是/etc/bash\u completion.d/git)。然后,安排bash将

第一次海报

这是在本周的工作对话中提到的

当您远程连接到git时,是否有一种方法可以在终端提示符中显示当前工作目录/当前git repo/分支

显然,linux用户可以使用linux/vim脚本,我想将这种shell脚本添加到我的配置文件中

目前我正在使用此页面中的一些信息在本地解决这些信息


提前感谢。

获取git完成脚本的副本。您可以从git本身获得它,或者如果您手边有Linux设备,您甚至可以从那里复制它(它可能是
/etc/bash\u completion.d/git
)。然后,安排bash将其“源代码化”。您可以通过在
.bashrc
中添加类似的内容来完成此操作:

. /usr/local/git-completion
(假设您将文件命名为Mac上的
/usr/local/git completion

最后,您需要调整提示。另外,在
.bashrc
中添加如下内容:

export PS1='[\w$(__git_ps1 "|%s")]\$ '

这里有一篇博文(不是我写的)更详细地讨论了这一点(以及其他一些相关的东西):

好的,在你给我指出了正确的方向后,我尝试了这一点,我的谷歌搜索得到了更精确的结果

很多人都指向你和我分享的帖子,比如这里:但我发现了一些其他类似的珠宝,我没有使用它们,但它们提供了信息:jeetworks.org/node/10,jonmadox.com/2008/03/13/show-your-git-branch-name-in-your-prompt/

在安装git.completion时,我需要一些不同的指导,因为我使用了我在这里找到的自制软件:它涵盖了多种安装方法

最后,我的bash/terminal有点脆弱,所以在我使用任何一个工具之前,我用以下说明升级到了最新的bash:milkbox.net/brace\u completion\u snow\u leopard\u grading\u bash/并获得了一些巨大的速度提升

最后,我不得不非常小心地重新构建我的概要文件脚本,但是出现了跟踪和错误(因为Bash3和4之间的差异,以及一些语法错误)——现在它看起来很棒,并且完成了任务

再次感谢


很抱歉,上面提到了网站的安全限制,请将我(因为我是新手)限制为2个链接,以打击垃圾邮件。

您只需要两个步骤即可

步骤1: 在您喜爱的编辑器中打开~/.bash\u profile,并将以下内容添加到底部

function git_branch {
git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'}

export PS1='\h:\w$(git_branch) \u\$'
对我来说就像

emacs ~/.bash_profile
步骤2: 将以下内容添加到底部

function git_branch {
git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'}

export PS1='\h:\w$(git_branch) \u\$'
完成! 附笔: 如果您希望您的终端色彩鲜艳,请尝试以下内容

export PS1 = '\[\e[1;39m\]\h:\w\[\e[01;39m\]$(git_branch) \[\e[01;39m\]$ \[\e[0m\]'

在shell提示符中获取git分支/状态信息的另一个选项是使用

您可以在这个屏幕截图中看到这是什么样子:

洋红色/绿色条是当前的分支名称。其颜色表示工作目录是否干净。当存在未跟踪的文件时,或当存在要从上游远程服务器拉入/推送到上游远程服务器的提交时,也会出现标记


PowerlineShell与bash、zsh和fish兼容。

谢谢,这正是我想要的。我会在接下来的几天里处理好它,让你知道它是怎么回事。