在使用指令列版控的過程中,經常有機會用到 Git Shell 這套優異的 Git 版控環境,一來他使用 Windows PowerShell 為核心,其訊息顯示與輸入都支援 Unicode,比較不會有中文字集轉換的問題;二來輸入命令或分支名稱的時候還有 IntelliSense 功能協助,非常貼心的設計;三來在版控的過程中,可以看出當下工作目錄位於哪個分支上,這個提示也很棒;四來常會看到他透過顏色與一些特殊符號提示你目前工作目錄的狀態,但不特別看文件還真的不太容易知道它顏色代表的意義,因此特別撰文解說。

不同的分支顏色所代表的意義

  • 青色 (Cyan),代表本地儲存庫遠端儲存庫是同步狀態! 
  • 紅色 (Red),代表目前本地儲存庫的版本比遠端儲存庫還落後 (behind),意思是遠端儲存庫擁有目前本地儲存庫沒有的版本,需要透過 git pull 把遠端儲存庫的變更抓回來更新本地儲存庫! 
    如下圖示,代表目前遠端儲存庫上有 1 個版本 (commit) 需要同步回來: 
  • 黃色 (Yellow),代表目前本地儲存庫有些版本比遠端儲存庫落後 (behind),同時間也有些版本比遠端儲存庫還超前 (ahead),意思是說,目前遠端儲存庫擁有目前本地儲存庫沒有的版本,而且本地儲存庫也擁有遠端儲存庫沒有的版本,代表你需要先做 git pull 把遠端儲存庫的變更抓回來更新本地儲存庫,也需要透過 git push 把本地儲存庫的版本變更推送上去。注意:由於遠端本地都有版本變更,這代表透過 git pull 抓取變更回來時,勢必要面對「合併」的議題,也就是可能會遇見「合併衝突」的狀況。 
  • 綠色 (Green),代表目前本地儲存庫有些版本比遠端儲存庫超前 (aheads),意思是說本地儲存庫擁有遠端儲存庫沒有的版本,你需要透過 git push 把本地變更推送到遠端儲存庫。 
    如下圖示,當我們先用 git pull 把遠端儲存庫的變更抓回來合併或更新之後,顏色馬上變成「綠色」了,也就是這個時候執行 git push 是最安全的(不會有衝突事件發生),你可以這樣思考:【當看到綠燈的時候,就是可以推送版本上去的時刻!】 
     

    如下圖,你可以發現,只要我把本地儲存庫的變更推送上去後,顏色就立刻變回青色 (Cyan)了! 

工作目錄檔案狀態符號與顏色所代表的意義

在 Git Shell 執行環境中,經常出現的一些有顏色的數字提示,其數字前的符號所代表的意義如下:

  • + = 有 n 個新增檔案
  • ~ = 有 n 個檔案被更新
  • - = 有 n 個檔案被刪除
  • ! = 有 n 個檔案在合併的時候發生衝突

其顏色所代表的意義如下:

  • 暗紅色 (Dark Red),代表這些檔案處於 Untracked 或 Not Staged 狀態 (不會被 commit 的檔案)
  • 暗綠色 (Dark Green),代表這些檔案處於 Staged 狀態 (會被 commit 的檔案數

以下圖示各位可以看圖說故事一番:

相關連結

GitHub for Windows 內建 Git Shell 執行時顏色所代表的意義的更多相关文章

  1. 使用github的使用,利用git shell命令行模式进行操作

    一.登录到git,新建一个版本仓库 二.在"Repository name"一栏里填写版本仓库的名称,如"test",Description栏是描述,可填可不填 ...

  2. github的使用,利用git shell命令行创建仓库并上传

    一.登录到github,新建一个版本仓库 二.在“Repository name”一栏里填写版本仓库的名称,如”test”,Description栏是描述,可填可不填. 默认访问权限为公共,点击”Cr ...

  3. 【转】Visual Studio單元測試小應用-測執行時間

    [转]Visual Studio單元測試小應用-測執行時間 Visual Studio的單元測試會記錄每一個測試的執行時間,如果有幾個Method要測效能,以前我會用Stopwatch,最近我都改用單 ...

  4. windows下使用Git Bash命令行克隆远程仓库代码

    此处使用的代码托管平台是GitLab,相比GitHub来说,它可以设置免费的私有仓库,哈哈,妈妈再也不用担心我的源码泄露了!1.切换到本地的工作目录,我的目录是: cd /d/coder/websit ...

  5. 使用pl/sql監控PROCEDURE執行時間

    創建表 CREATE TABLE PROCESS_TIMING_LOG (   PROCESS_NAME       VARCHAR2(50 BYTE),   EXECUTION_DATE     D ...

  6. github for window 中 git shell 设置代理方法和解决ssl证书错误的问题

    体验了一下传说中的 github for windows(操作git有很多的方法,我还没有学会,所以找了个简单的方法),听说用起来还不错,毕竟也开始接触了github.下载地址是 http://win ...

  7. Git Shell使用笔记

    1,首次打开Git shell错误(以前打开过gethub客户端) 警告: git command could not be found. Please create an alias or add ...

  8. git入门学习(一):github for windows上传本地项目到github

    Git是目前最先进的分布式版本控制系统,作为一个程序员,我们需要掌握其用法.Github发布了Github for Windows 则大大降低了学习成本和使用难度,他甚至比SVN都简单. 一.首先在g ...

  9. Github客户端以及Git shell的使用

    昨天介绍了怎么使用Git Shell来commit我们的代码,但是这都是简单的操作,我们还没有使用到Github是怎么进行版本控制的呢.所以,今天就来介绍一下,怎么来做版本控制吧. 必备材料 首先要确 ...

随机推荐

  1. 最常用的ES6特性(转)

    最常用的ES6特性 let, const, class, extends, super, arrow functions, template string, destructuring, defaul ...

  2. ACM/ICPC 之 靠墙走-DFS+BFS(POJ3083)

    //POJ3083 //DFS求靠左墙(右墙)走的路径长+BFS求最短路 //Time:0Ms Memory:716K #include<iostream> #include<cst ...

  3. Reverse Core 第一部分 代码逆向技术基础

    @date: 2016/10/14 <逆向工程核心原理>笔记 记录书中较重要的知识,方便回顾 ps. 因有一些逆向基础,所以我本来就比较熟悉的知识并未详细记录 第一章 关于逆向工程 目标, ...

  4. 第一章 简单工厂模式 及 UML中类图的表示方法

    写一个简单计算器程序时,可以写一个操作类,然后加.减.乘.除操作分别继承它,复写操作计算结果的方法.写一个简单工厂类,通过输入的操作符,使用操作类来new一个相应的操作类的子类对象.这样,工厂就实例化 ...

  5. 解决Mysql连接池被关闭 ,hibernate尝试连接不能连接的问题。 (默认mysql连接池可以访问的时间为8小时,如果超过8小时没有连接,mysql会自动关闭连接池。系统发布第二天访问链接关闭问题。

    解决Mysql连接池被关闭  ,hibernate尝试连接不能连接的问题. (默认MySQL连接池可以访问的时间为8小时,如果超过8小时没有连接,mysql会自动关闭连接池. 所以系统发布第二天访问会 ...

  6. CentOS7 cacti 安装

    首先centos7 web环境的安装这里就不说了.安装cacti,首先得web环境配置好 其次添加两个用户,一个是cacti用于操作mysql的 cactimysql  一个是cacti操作Linux ...

  7. DB2错误码信息

    00 完全成功完成 表 3  01 警告 表 4  02 无数据 表 5  07 动态 SQL 错误 表 6  08 连接异常 表 7  09 触发操作异常 表 8  0A 功能部件不受支持 表 9  ...

  8. 【转】Redis入门

    Redis是一个开源,先进的key-value存储,并用于构建高性能,可扩展的Web应用程序的完美解决方案. Redis从它的许多竞争继承来的三个主要特点: Redis数据库完全在内存中,使用磁盘仅用 ...

  9. 【Java EE 学习 82 下】【MAVEN整合Eclipse】【MAVEN的一些高级概念】

    一.MAVEN整合Eclipse MAVEN是非常优秀,但是总是要开命令行敲命令是比较不爽的,我们已经习惯了使用IDE,所以还有一种将MAVEN整合到Eclipse的方法. 详情查看:http://w ...

  10. 如何把Power BI嵌入到Web应用中

    (此文章同时发表在本人微信公众号"dotNET开发经验谈",欢迎右边二维码来关注.) 题记:这篇其实不是一个操作向导了,主要对Power BI的嵌入特性进行探讨. Power BI ...