通常来说,默认的配置就可以了,经常需要改动的可能就是默认它显示了全路径,这里只需要将
- \w 替换为 \W
即可。
然后执行命令:
- source ~/.bashrc
让配置生效即可。
再来梳理一下过程:
- 根据需要修改PS1显示项
- 执行source .bashrc使其生效
这里注意,Linux启动过程中,配置文件加载是有顺序的,
某用户家目录下的bashrc只影响当前用户,如果想要全系统修改生效,可以修改/etc/bash.bashrc(系统差异,可能不一样)。
如何显示当前git分支
其实到这里你应该基本上已经明白了,无非就是将git当前分支的信息配置在PS1中罢了。
如何获取当前git分支
我们都知道:
- $ git branch
- master
- * testBranch
可以查看分支信息,其中前面有*的表示当前所在分支,所以我们通过字符处理拿到即可。
或者直接通过命令:
- $ git rev-parse –abbrev-ref HEAD
- testBranch
拿到。
将分支信息配置在PS1中
考虑到有的目录下可能并不存在git项目,所以需要做是否为空的判断,也要注意处理标准错误。因此将获取git分支信息的部分写成一个shell函数:
- git_branch()
- {
- branch=`git rev-parse –abbrev-ref HEAD 2>/dev/null`
- if [ "${branch}" != "" ]
- then
- if [ "${branch}" = "(no branch)" ]
- then
- branch="(`git rev-parse –short HEAD`…)"
- fi
- echo "($branch)"
- fi
- }
将其加入到.bashrc文件结尾中,然后修改PS1的内容:
- PS1='${debian_chroot:+($debian_chroot)}\u@\h:\W$(git_branch)\$ '
- PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\W$(git_branch)\[\033[00m\]\$ '
修改完成后保存,执行:
- $ source ~/.bashrc
当前里面的颜色你可以根据自己的需要自定义。再来看看之前的效果,是不是觉得没那么难配置了?