我已经知道如何区分2次提交,也可以逐个文件获取它们。我也知道(感谢这个帖子Count number of lines in a git repository)你可以使用Cloc来获取实际的代码行而不是所有行。
但是我怎样才能在git中获得代码行的差异,I:E在2个不同的提交中使用cloc?
这给了我一个代码打印输出,其中包含之前添加的内容(+)和删除的内容( - )。但是在这里我不能直接使用cloc,我会做一些解析
git diff `git rev-list --since="jun 30 2014" --reverse origin/master | head -1`..`git rev-list --until="dec 31 2014" origin/master | head -1`
这里我修改了所有文件并添加/更改了第一列的行。问题是这包括空行和注释。
git diff `git rev-list --since="jun 30 2014" --reverse origin/master | head -1`..`git rev-list --until="dec 31 2014" origin/master | head -1` --numstat
有没有办法在不填写空白行或注释的情况下执行上述操作?我:E使用Cloc而不是Gits自己的比较算法?如果是这样我怎么能这样做?
提前致谢。
答案 0 :(得分:0)
如果我理解正确,最简单的方法就是按照以下步骤实现:
git checkout <commit-1>
cloc ./ > ../commit-1-cloc.txt
git checkokut <commit-2>
cloc ./ > ../commit-2-cloc.txt
然后,您将有两个非常好的表格,向您显示很多信息,例如here