我只是偶尔的git用户,现在我遇到了一个我无法理解的问题:
假设有一个git存储库,没有分支,只有标签。对于给定的两个标签。我需要获取存储库中所有文件的列表,每个文件后面都跟两个数字:两个标签之间添加到特定文件的行数,以及两个标签之间从同一文件删除的行数。
我在网上搜索,但仅找到解决与贡献者相关的类似问题的解决方案,而不是文件。
答案 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 :(得分:1)
只要运行
git diff --stat tag1 tag2
未列出的文件具有0个更改,二进制文件显示-
作为更改数量。