我在存储库中有一堆提交。我想看到两次提交之间更改的文件列表-从SHA1到SHA2。
我应该使用什么命令?
我在存储库中有一堆提交。我想看到两次提交之间更改的文件列表-从SHA1到SHA2。
我应该使用什么命令?
当前回答
git diff --name-only SHA1 SHA2
其中您只需要包含足够的SHA散列来识别提交。例如,您也可以这样做
git diff --name-only HEAD~10 HEAD~5
查看第十次最新提交和第五次最新(或大约)提交之间的差异。
其他回答
另外请注意,如果您只想查看上次提交和之前提交之间的更改文件,这很好:
git show --name-only
这将显示文件中的更改:
git diff --word-diff SHA1 SHA2
Use
git log --pretty=oneline > C:\filename.log
它将只记录一行(--prey=oneline),这是更改文件的名称。它还会将所有详细信息记录到输出文件中。
对于只需要关注Java文件的人来说,这是我的解决方案:
git diff --name-status SHA1 SHA2 | grep '\.java$'
以下内容对我很有用:
git show --name-only --format=tformat: SHA1..SHA2
它也可以用于单个提交:
git show --name-only --format=tformat: SHA1
这对于在Jenkins中使用非常方便,在Jenkins中将为您提供一个变更集SHA哈希值列表,并希望对其进行迭代以查看哪些文件已被更改。
这与前面的几个答案类似,但使用tformat:而不是format:删除了提交之间的分隔符。