我尝试在bash提示符上添加我目前正在工作的git分支(签出),但没有成功。(同时保持我的当前路径显示活动目录/文件完整) 我有一个。bashrc文件在我的家,但我也看到很多人提到。profile文件…
当前回答
root:~/project# -> root:~/project(dev)#
将以下代码添加到~/.bashrc的末尾
force_color_prompt=yes
color_prompt=yes
parse_git_branch() {
git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;31m\]$(parse_git_branch)\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w$(parse_git_branch)\$ '
fi
unset color_prompt force_color_prompt
其他回答
对于mac来说,这个很好用:http://martinfitzpatrick.name/article/add-git-branch-name-to-terminal-prompt-mac/:
# Git branch in prompt.
parse_git_branch() {
git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}
export PS1="\u@\h \W\[\033[32m\]\$(parse_git_branch)\[\033[00m\] $ "
按照以下步骤在ubuntu终端中显示你的GIT repo分支的名称:
步骤1:打开终端,使用下面的命令编辑.bashrc。
vi . bashrc
步骤2:在.bashrc文件的末尾添加以下一行:
parse_git_branch() {
git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/' }
export PS1=“\u@\h \W\[\033[32m\]\$(parse_git_branch)\[\033[00m\] $ ”
步骤3:在根(home)目录下运行。bashrc:
- = ytet -伊甸园字幕组= -翻译
第四步:重启并打开终端,检查cmd。导航到GIt回购目录路径,就完成了。:)
root:~/project# -> root:~/project(dev)#
将以下代码添加到~/.bashrc的末尾
force_color_prompt=yes
color_prompt=yes
parse_git_branch() {
git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;31m\]$(parse_git_branch)\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w$(parse_git_branch)\$ '
fi
unset color_prompt force_color_prompt
1-如果你没有bash-completion…: sudo apt-get install bash-completion
2-编辑你的.bashrc文件并检查(或添加):
if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
3 -…export PS1='$(__git_ps1) \w\$ ' (__git_ps1将显示你的git分支)
4- do source .bashrc
编辑:
进一步阅读:不要重新发明轮子
我尝试了一个python小脚本,放在....文件夹中 “gitprompt”文件
#!/usr/bin/env python
import subprocess, os
s = os.path.join(os.getcwd(), '.git')
def cut(cmd):
ret=''
half=0
record = False
for c in cmd:
if c == "\n":
if not (record):
pass
else:
break
if (record) and c!="\n":
ret = ret + c
if c=='*':
half=0.5
if c==' ':
if half == 0.5:
half = 1
if half == 1:
record = True
return ret
if (os.path.isdir(s)):
out = subprocess.check_output("git branch",shell=True)
print cut(out)
else:
print "-"
让它可执行之类的
然后相应地调整bash提示符,如下:
\u:\w--[$(gitprompt)] \$
推荐文章
- 安装tzdata非交互式
- 为什么我需要显式地推一个新分支?
- 如何撤消最后的git添加?
- Rubymine:如何让Git忽略Rubymine创建的.idea文件
- 在Bash中检查变量是否存在于列表中
- Gitignore二进制文件,没有扩展名
- Git隐藏错误:Git隐藏弹出并最终与合并冲突
- 查看PS命令的全部输出
- 确保一次只运行一个shell脚本实例的快速方法
- 如何在Windows命令提示符下运行.sh ?
- 无法安装gem -未能建立gem本地扩展-无法加载这样的文件——mkmf (LoadError)
- 了解Git和GitHub的基础知识
- 没有。Git目录的Git克隆
- 如何从命令行将每两行合并为一行?
- 如何复制在bash所有目录和文件递归?