git log 查看当前分支的提交历史
在提交了若干更新之后,想回顾下提交历史,可以使用git log命令查看。
默认不用任何参数的话,git log会按提交时间列出所有的更新,最近的更新排在最上面。看到了吗,每次更新都有一个 SHA-1 校验和、作者的名字 和 电子邮件地址、提交时间,最后缩进一个段落显示提交说明。
基础选项
-p选项 展开显示每次提交的内容差异,用-2则仅显示最近的再次更新:
$ git log -p -2
–stat选项 仅简要的显示 文件 增改行数统计,每个提交都列出了修改过的文件,以及其中添加和移除的行数,并在最后列出所有增减行数小计。
$ git log –stat
–author选项 仅显示指定作者相关的提交
$ git log –author=XXXX
高级使用
统计某人代码量
git log –author=”your_name” –pretty=tformat: –numstat | awk ‘{add +=
1;subs+=
2; loc +=
1−
2} END { printf “added lines: %s, removed lines: %s, total lines: %s\n”, add, subs, loc }’
结果示例: added lines: 54, removed lines: 2, total lines: 52
扫描Log 统计每个人的增删行数
git log –format=’%aN’ | sort -u | while read name; do echo -en “ name\t";gitlog−−author=" name” –pretty=tformat: –numstat | awk ‘{ add += 1;subs+= 2; loc += 1− 2 } END { printf “added lines: %s, removed lines: %s, total lines: %s\n”, add, subs, loc }’ -; done