所有文件在两个标签之间的Git统计信息

时间:2018-07-11 00:00:02

标签: git

我只是偶尔的git用户,现在我遇到了一个我无法理解的问题:

假设有一个git存储库,没有分支,只有标签。对于给定的两个标签。我需要获取存储库中所有文件的列表,每个文件后面都跟两个数字:两个标签之间添加到特定文件的行数,以及两个标签之间从同一文件删除的行数。

我在网上搜索,但仅找到解决与贡献者相关的类似问题的解决方案,而不是文件。

2 个答案:

答案 0 :(得分:3)

您可以将git diff--numstat选项一起使用,以显示两个标签之间每个已修改文件的“以十进制表示法添加和删除的行数”。

git diff tag1 tag2 --numstat

来自git docs

  

--numstat选项提供了diffstat(1)信息,但其设计目的是   简化机器消耗。 --numstat输出中的一个条目看起来   像这样:

     

1 2 README
  3 1 arch/{i386 => x86}/Makefile

     

也就是说,从左到右:

     
      
  1. 添加的行数;
  2.   
  3. 标签;
  4.   
  5. 已删除的行数;
  6.   
  7. 标签;
  8.   
  9. 路径名(可能带有重命名/复制信息);
  10.   
  11. 换行符。
  12.   

答案 1 :(得分:1)

只要运行

git diff --stat tag1 tag2

未列出的文件具有0个更改,二进制文件显示-作为更改数量。