我如何在Windows中拥有git的外壳?


9

当我使用Windows时,当您位于git存储库中时,shell(甚至是标准的Windows shell)会显示有关git存储库的基本信息。诸如活动分支之类的东西,也许还有一些颜色编码。

有没有办法在Ubuntu中拥有相同的功能?


您在Windows中安装了什么版本的git?您运行什么命令来获取此信息?您是否在git-core安装了软件包的情况下尝试了这些命令?
jackweirdy 2012年

在git上,我具有最新版本,但是如果我使用命令行并且位于git信息库中,则可以看到活动分支的名称
Nicola Peluchetti 2012年

Answers:


4

Windows Git shell(实际上只是bash)将提示设置为$PS1包含在内的长字符串$(__git_ps1)

__git_ps1 被定义为一个函数,将近100行,在括号中打印当前分支的名称。

/etc/profileC:\Program Files (x86)\Git\etc\profile至少在我的系统上是())调用invokes /etc/git-completion.bash,它定义了__git_ps1功能,sets $PS1,定义了一些特定于git的补全。

git-completion.bashGit Bash 所使用的似乎基于


1
所以我该怎么做才能在uBuntu上激活它?:)抱歉,我是新手。
Nicola Peluchetti

转到主目录,然后在终端中键入命令“ gedit .baschr”,您将提示您编辑.baschr文件。但是为了安全起见,请确保将原始副本保存在其他目录中。
Rahal Kanishka'2



1
  • 如何阻止bash提示颜色转义有一个示例。您可以从答案中复制它,然后使用gedit将其粘贴到主目录中的.bashrc文件的底部(当然,首先要进行备份)。

  • 如果Keith在回答中提到的.bashrc文件是git的一部分,它将获得GPL2的许可,因此您也可以将其粘贴到.bashrc文件中。您必须获取/etc/git-completion.bash文件并将其安装在某个位置,并使新的.bashrc引用该文件。

  • 您还可以在Arturo Fernandez上粘贴以下内容并尝试一下:http: //www.bsnux.com/recipes/how-display-you-current-git-branch-prompt.html

 #在提示中显示git branch
 函数parse_git_branch {
   git分支--no-color 2> / dev / null | sed -e'/ ^ [^ *] / d'-e's / * \(。* \)/(\ 1)/'
 }

 函数proml {
   本地GREEN =“ \ [\ 033 [0; 32m \]”
   本地WHITE =“ \ [\ 033 [0; 37m \]”

 PS1 =“ [\ u @ \ h \ w $ GREEN \ $(parse_git_branch)] $ WHITE \ $”
 PS2 ='>'
 PS4 ='+'
}
程序
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.