git之再说git log

Published: 16 Aug 2013 Category: git

我通常以以下几种方式来使用git log

git log -n(最新的n次提交)
git log -p(提交中都修改了哪些代码)
git log --oneline(格式化提交,使得看起来舒服些)

或者上述几种的组合。但是,我常常需要知道某个文件在哪些提交(commit)中修改了。于是乎,我想这该用什么命令啊?一时半会找不到。google一番后,发现有这么一种用法:

git log -- 文件路径名

出自这儿

[--] <path>…
Show only commits that are enough to explain how the files that match the specified paths came to be. See "History Simplification" below for details and other simplification modes.
To prevent confusion with options and branch names, paths may need to be prefixed with "-- " to separate them from options or refnames.  

大概意思就是只显示修改过文件路径名的提交(commit),是不是很酷!

再者,如果我们只想看到修改过某个字符串的相关提交(commit),我们可以这么来干:

git log -S'字符串'

这招是不是更酷了,直接把修改过某个字符串的提交(commit)罗列出来了。