git color的配置

Git多颜色输出

Git默认的输出是单一颜色的,不仅不够美观,也不容易阅读。实际上,Git本身就支持用多种颜色来显示其输出的信息,只需在命令行中运行以下命令来修改git的设置,即可开启多颜色输出:

git config --global color.status auto
git config --global color.diff auto
git config --global color.branch auto
git config --global color.interactive auto

执行以上命令后,git的status, diff和branch等诸命令的输出就都是带有颜色的了。见下图示例。


自定义log格式

完成上述步骤后,git log 命令的输出虽然有了点颜色,但还是显得枯燥(见下图)。

不要紧,强大的git提供了自定义log格式的功能,尝试输入以下命令:

git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit

你将看到类似下图的输出:

怎么样,不赖吧?不过,每次查看log都输出这么一长串的命令,实在是不太现实。咱们来通过git的命令别名来解决这个问题。输入以下命令:

git config --global alias.lg "log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset'"

上述命令将创建一个命令别名 lg,每次你使用命令 git lg 就相当于输入了刚才那一长串命令。现在,如果想看美观的多颜色输出,就使用 git lg,如果想看普通的log输出,就使用 git log,二者互不干扰。

如果你想让log输出某些特定的信息,可以自己调整 --pretty 参数的值,例如下面的命令将只显示commit的hash,提交时间,提交者姓名:

git log --pretty=format:'%h %ar %an'

把format后面单引号中的内容替换为你想要的格式,即可实现自定义的log输出格式。这里的%h, %ar等是一些git预定义的占位符,完整的列表如下:

%H
commit hash
%h
commit的短hash
%T
tree hash
%t
tree的短hash
%P
parent hashes
%p
parent的短hashes
%an
作者名字
%aN
mailmap中对应的作者名字 (.mailmap对应,详情参照git-shortlog(1)或者git-blame(1))
%ae
作者邮箱
%aE
作者邮箱 (.mailmap对应,详情参照git-shortlog(1)或者git-blame(1))
%ad
日期 (–date= 制定的格式)
%aD
日期, RFC2822格式
%ar
日期, 相对格式(1 day ago)
%at
日期, UNIX timestamp
%ai
日期, ISO 8601 格式
%cn
提交者名字
%cN
提交者名字 (.mailmap对应,详情参照git-shortlog(1)或者git-blame(1))
%ce
提交者 email
%cE
提交者 email (.mailmap对应,详情参照git-shortlog(1)或者git-blame(1))
%cd
提交日期 (–date= 制定的格式)
%cD
提交日期, RFC2822格式
%cr
提交日期, 相对格式(1 day ago)
%ct
提交日期, UNIX timestamp
%ci
提交日期, ISO 8601 格式
%d
ref名称
%e
encoding
%s
commit信息标题
%f
过滤commit信息的标题使之可以作为文件名
%b
commit信息内容
%N
commit notes
%gD
reflog selector, e.g., refs/stash@{1}
%gd
shortened reflog selector, e.g., stash@{1}
%gs
reflog subject
%Cred
切换到红色
%Cgreen
切换到绿色
%Cblue
切换到蓝色
%Creset
重设颜色
%C(…)
制定颜色, as described in color.branch.* config option
%m
left, right or boundary mark
%n
换行
%%
a raw %
%x00
print a byte from a hex code
%w([<w>[,<i1>[,<i2>]]])

git的color configura的更多相关文章

  1. git 常用操作命令

    A. 新建Git仓库,创建新文件夹git init B. 添加文件到git索引git add <filename>  --- 单个文件添加git add * --- 全部文件添加 C. 提 ...

  2. git 常用操作

    查看某文件的某些行的变化历史: $ git log --pretty=short -u -L 2003,2005:Executor.cpp http://stackoverflow.com/quest ...

  3. Git - 使用指南

    GIT (分布式版本控制系统) 编辑 Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目.[1]  Git的读音为/gɪt/. Git是一个开源的分布式版本控制系统,可以 ...

  4. Git基本命令行操作

    A. 新建Git仓库,创建新文件夹git init  B. 添加文件到git索引git add <filename>  --- 单个文件添加git add * --- 全部文件添加 C. ...

  5. Git基本命令行操作 (转)

    Git远程操作详解   作者: 阮一峰 Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和 ...

  6. git review报错一例

    在线上修改代码,最后使用git review提交代码审核的时候出现报错如下:[wangshibo@115~]$ vim testfile           #修改代码[wangshibo@115~] ...

  7. git使用记录

    唔,git有本地版本管理功能,所以,这个完全是可以拿来自己做版本管理的.所以有必要学习一下,另外,在oschina上开了个账户,用来管理自己一些代码,也是增加自己学习git的动力. 1. 使用clon ...

  8. git config(转载)

    From:http://www.g2w.me/2013/10/cache-github-credential-for-https-repository/ http://openwares.net/li ...

  9. Git CMD - branch: List, create, or delete branches

    命令格式 git branch [--color[=<when>] | --no-color] [-r | -a] [--list] [-v [--abbrev=<length> ...

随机推荐

  1. Polly简介 — 1. 故障处理策略

    Polly 是 .Net 下的一套瞬时故障处理及恢复的函式库,可让开发者以fluent及线程安全的方式来应用诸如Retry.Circuit Breaker.Timeout.Bulkhead Isola ...

  2. XStream转换Java对象与XML

    1.引入需要的jar包,在pom.xml中配置依赖 <dependency> <groupId>com.thoughtworks.xstream</groupId> ...

  3. 一个小动画,颠覆你的CSS世界观

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. android手机安全:被攻陷的一个场景

     到处找WIFI,对于我们的手机控来说是相当普遍的了.假设你发现了有可用的wifi,并选择了浏览器连接,当浏览器出现一个web 页面的时候,你可能已经中招了. 相同,当你的手机使用一些免费应用的时候, ...

  5. onWindowFocusChanged重要作用 and Activity生命周期

    onWindowFocusChanged重要作用 Activity生命周期中,onStart, onResume, onCreate都不是真正visible的时间点,真正的visible时间点是onW ...

  6. Android 面试题(答案最全)

    1. Android dvm的进程和Linux的进程, 应用程序的进程是否为同一个概念DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟 ...

  7. Spring注解方式实现任务调度【官方文档翻译】

    原文:http://docs.spring.io/spring/docs/4.0.1.BUILD-SNAPSHOT/javadoc-api/ 注解类型:EnableScheduling @Target ...

  8. Python的开源人脸识别库:离线识别率高达99.38%

    Python的开源人脸识别库:离线识别率高达99.38%   github源码:https://github.com/ageitgey/face_recognition#face-recognitio ...

  9. 【BZOJ】【3668】【NOI2014】起床困难综合症

    贪心 位运算的题……基本都是按位来做的?... 从高位到低位,贪心来搞就可以了…… 这都算不上是数位DP吧= = /****************************************** ...

  10. C++获得本机所有网卡的IP和MAC地址信息

    一台机器上可能不只有一个网卡,但每一个网卡只有一个MAC地址,而每一个网卡可能配置有多个IP地址:如平常的笔记本电脑中,就会有无线网卡和有线网卡(网线接口)两种:因此,如果要获得本机所有网卡的IP和M ...