获得已经做过的更改清单是 命令的功能。

    你应该看到:

    1. $ git log
    2. commit 1f7ec5eaa8f37c2770dae3b984c55a1531fcc9e7
    3. Author: Jim Weirich <jim (at) neo.com>
    4. Date: Sat Apr 13 15:20:42 2013 -0400
    5. Added a comment
    6. commit 582495ae59ca91bca156a3372a72f88f6261698b
    7. Author: Jim Weirich <jim (at) neo.com>
    8. Date: Sat Apr 13 15:20:42 2013 -0400
    9. Added a default value
    10. commit 323e28d99a07d404c04f27eb6e415d4b8ab1d615
    11. Author: Jim Weirich <jim (at) neo.com>
    12. Using ARGV
    13. commit 94164160adf8faa3119b409fcfcd13d0a0eb8020
    14. Author: Jim Weirich <jim (at) neo.com>
    15. Date: Sat Apr 13 15:20:42 2013 -0400
    16. First Commit

    这份清单是迄今为止我们对仓库所作的总共 4 次提交。

    你应该看到:

    1. $ git log --pretty=oneline
    2. 1f7ec5eaa8f37c2770dae3b984c55a1531fcc9e7 Added a comment
    3. 323e28d99a07d404c04f27eb6e415d4b8ab1d615 Using ARGV
    4. 94164160adf8faa3119b409fcfcd13d0a0eb8020 First Commit

    log 命令有许多选项用来选择显示哪个条目。玩玩下面的选 项:

    参阅 了解更多细节。

    1. $ git log --all --pretty=format:'%h %cd %s (%an)' --since='7 days ago'

    随着时间的推移,我发现在工作时最喜欢下列日志格式。

    它看起来像这样:

    1. $ git log --pretty=format:'%h %ad | %s%d [%an]' --graph --date=short
    2. * 1f7ec5e 2013-04-13 | Added a comment (HEAD, master) [Jim Weirich]
    3. * 582495a 2013-04-13 | Added a default value [Jim Weirich]
    4. * 323e28d 2013-04-13 | Using ARGV [Jim Weirich]
    5. * 9416416 2013-04-13 | First Commit [Jim Weirich]

    让我们看一下细节:

    • --pretty="..." 定义输出的格式
    • %h 是提交 hash 的缩写
    • %d 是提交的装饰(如分支头或标签)
    • %ad 是创作日期
    • %s 是注释
    • %an 是作者姓名
    • --graph 使用 ASCII 图形布局显示提交树