使用 git log
命令查看提交记录时,默认打印commit hash值、作者、提交日期、和提交信息。如果想要查看更多内容,可以提供不同的参数来指定查看的信息。具体实例说明如下。
查看提交记录具体的改动
执行 git log
命令会打印提交信息,默认不会列出具体的改动内容。可以使用 git log -p
命令来显示具体的改动内容。查看 man git-add 对 -p 选项说明如下:
-p, -u, --patch
Generate patch (see section on generating patches).
即,git log -p
命令默认以patch的形式来显示改动内容,会显示修改前、修改后的对比。
在 git log -p
后面还可以提供 commit hash 值来从指定的 commit 开始查看,但不是只查看这个 commit 的改动。例如,git log -p 595bd27 命令是从 595bd27 这个 commit 开始显示代码修改,继续往下翻页,可以看到后面的 commit 改动。
如果只想查看指定 commit 的改动,可以使用 git show
命令。例如,git show 595bd27 只显示出 595bd27 这个 commit 自身的改动,翻看到最后就结束打印,不会继续往下显示后面 commit 的改动。
查看提交记录改动的文件名
使用 git log --name-status
命令来查看提交记录改动的文件名,但不会打印具体的改动,方便查看改动了哪些文件。
查看 man git-log 对 --name-status 的说明如下:
--name-status
Show only names and status of changed files.
只查看前面几条提交信息
使用 git log
命令查看使用提交记录,会显示全部的提交信息。如果只想查看前面几条提交信息,可以执行git log -<number>
命令,number 参数值是数字,指定要查看多少条信息,例如 1、2、3 等。查看 man git-log 对 -<number>
选项说明如下:
-<number>, -n <number>, --max-count=<number>
Limit the number of commits to output.
例如,git log -3
命令会只列出前面三条提交信息。注意,这个命令并不是只列出第三个提交信息。
可以把 -<number>
选项和其他选项结合使用。例如 git log -p -3
命令只查看前面三条提交信息的具体改动。
查找特定的commit信息
使用 git log --grep=<pattern>
命令在commit信息中查找指定的内容。查看 man git-log 对 --grep 的说明如下:
--grep=<pattern>
Limit the commits output to ones with log message that matches the specified pattern (regular expression). With more than one --grep=<pattern>, commits whose message matches any of the given patterns are chosen (but see --all-match).
这里说的commit信息指的是在执行 git commit 命令时填写的信息,不包含文件改动的内容。
例如,为了方便标识提交的修改对应哪个模块,要求在commit信息里面写上模块名,假设应用UI代码的模块名是APPLICATION_UI,就可以使用 git log --grep=APPLICATION_UI
来过滤出所有 APPLICATION_UI 模块的提交历史。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。