git之间的区别
...这两个命令之间的区别是什么? 为什么要麻烦他们呢?
提交52f425e1(2013年8月30日)提到:
鼓励新用户改用“ log
”。 这些天,这些命令是统一的,只是有不同的默认值 。
' git log
'只允许你查看日志消息,并且在2005年6月初添加时不会出现差异。只是在2006年4月初,该命令学会了差异选项。
因此,电力用户倾向于使用自2005年5月中以来已经存在的“已whatchanged
”,并支持差异选项。
这就是git whatchanged
的手册页的新版本现在会说:
鼓励新用户改用git log
。 whatchanged
命令基本上与git log
相同,但默认显示原始格式diff输出并跳过合并。
该命令主要是出于历史原因保存的; 许多在git log
通过阅读Linux内核邮件列表发明之前就已经学会了Git的人们的手指都经过了训练 。
在最简单的形式中,'git log'显示每个提交(sha,作者,日期,消息),而'git whatchanged'则显示提交和改变的文件。 例如:
$ git log
commit db9f525674443314a9822a6bd6c3acce49c8f8d6
Author: ...
Date: Wed Apr 4 22:55:33 2012 -0700
Add more
commit eed0b7aa3cad5d985b5f1d52f3c0605339c119a1
Author: ...
Date: Tue Apr 3 20:36:04 2012 -0700
del bing/one.c
但对于什么变化:
$ git whatchanged
commit db9f525674443314a9822a6bd6c3acce49c8f8d6
Author: ...
Date: Wed Apr 4 22:55:33 2012 -0700
Add more
:100644 100644 f2e4113... d415016... M bar.c
commit eed0b7aa3cad5d985b5f1d52f3c0605339c119a1
Author: ...
Date: Tue Apr 3 20:36:04 2012 -0700
del bing/one.c
:100644 000000 e69de29... 0000000... D bing/one.c
有很多选项可以改变每个命令的输出。 例如'git whatchanged -p'显示差异/补丁形式的变化。
我不完全同意。 你能看到合并更改文件与log
?
我没有找到这个功能,对于了解某个分支文件何时合并非常有用,例如:
branch1
中的file cc
有一个提交日期从2012年1 branch1
1日开始,如果你做了一个合并到branch2
,并且稍后想跟随那个提交在branch2
中引入的那一天, git log
可以帮忙吗? 如果你有合并,你可以使用git whatchanged -m sha1
搜索它们