1:问题描述:

  在Windows环境下习惯使用git bash操作git分支,最近学习linux环境,发现linux环境终端不显示git分支,相关现象如下:

       

  期望效果是:

    

  我的linux环境版本是:Ubuntu 18.04 LTS

系统默认的终端是:Terminal

2:修改方案:

  通过百度,找到解决方案:oh-my-zsh

  1:oh-my-zsh介绍:

        oh-my-zsh是基于Zsh(Zsh是一个Linux用户很少使用的power-shell,这是由于大多数Linux产品安装,以及默认使用bash shell)的功能作了一个扩展,方便插件管理、主体自定义等。

oh-my-zsh源码在  https://github.com/robbyrussell/oh-my-zsh ,它的License为MIT。

  2:oh-my-zsh安装:

安装zsh:
hlp@hlp:~/code/github_code/git_mytest$ sudo apt install zsh
查看安装成功:
hlp@hlp:~/code/github_code/git_mytest$ zsh --version
zsh 5.4.2 (x86_64-ubuntu-linux-gnu)
安装
oh-my-zsh:
hlp@hlp:~/code/github_code/git_mytest$ sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"

   附图:安装成功的标志:

  

  3:结果验证:  

启动zsh终端:
hlp@hlp:~/code/github_code/git_mytest$ zsh
➜ git_mytest git:(master) ls ------》成功显示了分支
doc LICENSE README.md src webpack.config.js
example package.json release SUMMARY.md
➜ git_mytest git:(master) exit -----》退出zsh终端
hlp@hlp:~/code/github_code/git_mytest$

4:配置修改:

分支显示颜色修改:
进入配置文件:

hlp@hlp:~/code/github_code/git_mytest$ vi ~/.oh-my-zsh/themes/robbyrussell.zsh-theme
修改后的配置文件:
hlp@hlp:~/code/github_code/git_mytest$ cat ~/.oh-my-zsh/themes/robbyrussell.zsh-theme
local ret_status="%(?:%{$fg_bold[green]%}➜ :%{$fg_bold[red]%}➜ )"
PROMPT='${ret_status} %{$fg[cyan]%}%c%{$reset_color%} $(git_prompt_info)' ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}git:(%{$fg[green]%}"
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} "
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗"
ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})"
配置文件生效查看:

hlp@hlp:~/code/github_code/git_mytest$ zsh
➜  git_mytest git:(master) ls    zsh主题修改:

查看自带默认主题:
hlp@hlp:~/code/github_code/git_mytest$ ls ~/.oh-my-zsh/themes -----》这里没有输出显示结果 修改主题:
hlp@hlp:~/code/github_code/git_mytest$ vi ~/.zshrc
hlp@hlp:~/code/github_code/git_mytest$ cat ~/.zshrc
# If you come from bash you might have to change your $PATH.
# export PATH=$HOME/bin:/usr/local/bin:$PATH # Path to your oh-my-zsh installation.
  export ZSH="/home/hlp/.oh-my-zsh" # Set name of the theme to load. Optionally, if you set this to "random"
# it'll load a random theme each time that oh-my-zsh is loaded.
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
ZSH_THEME="robbyrussell" ------》修改该字段即可修改主题,相关主题可以参考:https://github.com/robbyrussell/oh-my-zsh/wiki/Themes # Set list of themes to load
# Setting this variable when ZSH_THEME=random
# cause zsh load theme from this variable instead of
zsh插件修改:(zsh默认只有git插件)
查看系统默认插件:
hlp@hlp:~/.oh-my-zsh/plugins$ ls ~/.oh-my-zsh/plugins 修改插件配置文件:
hlp@hlp:~/code/github_code/git_mytest$ vi ~/.zshrc
hlp@hlp:~/code/github_code/git_mytest$ cat ~/.zshrc
。。。。。。
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*)
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(
  git wd web-search history history-substring-search ------》增加想要的插件,插件介绍:https://github.com/robbyrussell/oh-my-zsh/wiki/Plugins
)
。。。。。 除此之外,~/.zshrc文件中其他注释掉的配置信息,可以参考相关文档自行修改达到自己想要的效果。
例如给history增加时间:
  1. $ vim ~/.zshrc
  2. HIST_STAMPS="yyyy-mm-dd"
  3. source ~/.zshrc
卸载:
直接在终端中,运行uninstall_oh_my_zsh既可以卸载。

3:参考文献:(有照抄的嫌疑,太详细了)

主要参考:http://www.mamicode.com/info-detail-2163847.html

        https://blog.csdn.net/czg13548930186/article/details/72858289

4:声明:

该博文只是为了规范自己的习惯,总结遇到过的问题,如有问题或者建议,请谅解。

5:遗留小问题(待处理):

  进入zsh终端后,我用git branch查看分支的时候,发现会打开新的界面显示结果,使用很不方便。

ubuntu使用git时,终端不显示git分支。的更多相关文章

  1. git Eclipse项目不显示当前分支

    问题: 在Eclipse中,导入新的git项目,在项目上不再显示当前所处的分支,也不再显示修改了哪些文件 解决: 右键选中项目  -->  Team  -->  Share Project ...

  2. git入门(3)git checkout 和git branch分支的创建和删除

    在一个项目中,需要多人同时开发,协同coding 要求: 开发时请用开发分支daily/0.0.1, 禁止直接使用master分支开发新建分支 git checkout -b daily/0.0.1 ...

  3. git常用命令,学git代码管理

    下面是我整理的常用 Git 命令清单.几个专用名词的译名如下. Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 一. ...

  4. Git详解之十 Git常用命令

    下面是我整理的常用 Git 命令清单.几个专用名词的译名如下. Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 一. ...

  5. 10年阿里自动化测试架构师帮您收集的:git常用命令大全以及git原理图【泣血推荐,建议收藏】

    一.Git分布式版本控制简介 ​ Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势.本来想着只把最有用.最常用的 Git 命令记下来, ...

  6. 01 . Git常用命令及方法和分支管理

    原理 # Workspace:工作区 # Index / Stage:暂存区 # Repository:仓库区(或本地仓库) # Remote:远程仓库 本地分支关联远程 git branch --s ...

  7. linux显示git commit id,同时解决insmod模块时版本不一致导致无法加载问题

    linux内核默认会包含git的commit ID. 而linux的内核在insmod模块时,会对模块和内核本身的版本做严格的校验.在开发产品时,改动内核后,由于commit ID变更,会导致linu ...

  8. MacBook设置终端颜色,补全忽略大小写,设置命令别名alias,设置vim,设置显示git分支

    1.启用终端颜色 修改配置文件 $ vim .bash_profile #enables colorin the terminal bash shell export export CLICOLOR= ...

  9. 能显示git分支的终端提示配置

    之前都是跟随潮流,安装zsh然后oh-my-zsh,选一个看起来顺眼的主题,一通瞎配置,很酷炫. 可是即使只有一个git插件,oh-my-zsh每次启动的时候都很慢,起码有好几秒,而且有时候zsh还会 ...

随机推荐

  1. MVC 下 ajax调用 日期差值计算

    背景: 服务项目已有服务期起止时间From-To 现在要根据用户输入的新的起始时间, 和该服务期的原有区间值, 计算出新的服务期截止时间 即 NewServiceToDateTime = NewSer ...

  2. P1936 水晶灯火灵

    题目描述 ,刚好符合以下③条规则:①m.n∈{1,2,……,k}②(n²-m*n-m²)²=1③m.n为整数. 输入输出格式 输入格式: Only one:k.(What?还是失败?) 输出格式: 共 ...

  3. Dapper系列之三:Dapper的事务修改与删除

    Dapepr的Update和Delete Dapper入门Dapper查询 上两篇文章我们介绍Dapper中添加和查询.本篇文章我们继续讲解修改和删除....如果本篇文章看不懂,请看阅读上两篇Dapp ...

  4. ubuntu下安装memcache及memcached

    memcache 和 memcached 有什么区别呢? memcache最早是在2004年2月开发的,而memcached最早是在2009年1月开发的.所以memcache的历史比memcached ...

  5. IOS动画之抖动

    -(void)shakeView:(UIView*)viewToShake { CGFloat t =2.0; CGAffineTransform translateRight  =CGAffineT ...

  6. JS通过使用PDFJS实现基于文件流的预览功能

    需求: 使用JS实现PDF文件预览功能 备选方案: 使用ViewerJS,官网  http://viewerjs.org/ 使用PDFJS,官网  https://mozilla.github.io/ ...

  7. TFS强制删除离职人员签出锁定项的方法(转)

      项目组一哥们走的时候以独占方式迁出了文件,现在其他人都无法修改,管理员似乎也无法将文件解除.经过摸索,找到了一种暴力的方法——直接改TFS数据库.虽然暴力,却能实实在在地解决这个问题. 步骤: 1 ...

  8. 再遇BGP

    第一次遇到BGP,是在大学的课堂上,现在再次看到它,有种深深的无奈,我只记得它的名字,忘记了它的样子. 那么什么是BGP呢? 翻译过来就是边界网关协议,一个用来网络数据进行选路的路由协议,使用TCP协 ...

  9. 使用Recast.AI创建具有人工智能的聊天机器人

    很多SAP顾问朋友们对于人工智能/机器学习这个话题非常感兴趣,也在不断思考如何将这种新技术和SAP传统产品相结合.Jerry之前的微信公众号文章C4C和微信集成系列教程曾经介绍了Partner如何利用 ...

  10. saltstack 源码安装

    面向对象编程(oop) 面向对象: 面向对象三大特性: 封装 继承 多肽封装: 封装就是将具体的客观事物封装成抽象的类.并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可行的进行信息隐藏继承 ...