git log 小结

git log  查看 当前分支的 提交历史

在提交了若干更新之后,想回顾下提交历史,可以使用 git log 命令查看

默认不用任何参数的话,git log 会按提交时间列出所有的更新,最近的更新排在最上面。看到了吗,每次更新都有一个 SHA-1 校验和、作者的名字 和 电子邮件地址、提交时间,最后缩进一个段落显示提交说明。

git log 有许多选项可以帮助你搜寻感兴趣的提交,接下来我们介绍些最常用的。

我们常用 -p 选项 展开显示每次提交的内容差异,用 -2 则仅显示最近的两次更新

$ git log -p -2

此外,还有许多摘要选项可以用,比如 --stat仅简要的显示 文件 增改行数统计,每个提交都列出了修改过的文件以及其中添加和移除的行数,并在最后列出所有增减行数小计。

$ git log --stat

 

--author 仅显示指定作者相关的提交。

$ git log  --author=haiwang

  查找 haiwang 提交的 版本;

 

 -----------------------------

比如我们有 2 个分支:master, dev,现在想查看这两个 branch 的区别,有以下几种方式:

1.查看 dev 有,而 master 中没有的:

git log dev ^master 
  • 1
  • 1

同理查看 master 中有,而 dev 中没有的内容:

git log master ^dev
  • 1
  • 1

这里写图片描述

2.查看 dev 中比 master 中多提交了哪些内容:

git log master..dev
  • 1
  • 1

注意,列出来的是两个点后边(此处即dev)多提交的内容。同理,想知道 master 比 dev 多提交了什么:

git log dev..master
  • 1
  • 1

这里写图片描述

3.不知道谁提交的多谁提交的少,单纯想知道有什么不一样:

git log dev...master
  • 1
  • 1

这里写图片描述

4.在上述情况下,再显示出每个提交是在哪个分支上:

git log --left-right dev...master
  • 1
  • 1

这里写图片描述

注意 commit 后面的箭头,根据我们在 –left-right dev…master 的顺序,左箭头 < 表示是 dev 的,右箭头 > 表示是 master的。

截图中表示这三个提交都是在 master 分支上的




posted @ 2012-04-19 19:28  点点爱梦  阅读(113)  评论(0编辑  收藏  举报