如果这不是很清楚,但是在Git中,我有一种方法可以通过名称查看分支上所有已更改的文件。 据我所知,我可以使用git log查看在单个提交中已更改的文件,但我希望看到自创建分支以来已经更改的所有文件,通过多次提交。
有git diff但是这也列出了我想要比较的分支中已更改的文件。我想要一个命令,“显示此分支中所有已更改文件的文件名”。
非常感谢
答案 0 :(得分:45)
假设您在分支foo
上,并且您对自master
分歧后哪些文件发生了变化感兴趣,您可以这样做:
git diff --name-only master...
(注意三点。)如果你不是foo
,你可以使用完整的表格:
git diff --name-only master...foo
我制作了一些解释双点和三点符号的图形,以及它们在git rev-list
和git log
中的含义之间的差异 - 您可以在this answer中找到它们。 / p>
答案 1 :(得分:1)
不知道有什么东西只根据您当前的分支执行您想要的功能,但如果您知道作为分支的父级的提交ID,则可以执行以下操作:
git diff --name-only <commit id of branch point>..HEAD
答案 2 :(得分:0)
假设您已经检查了您正在处理的分支,并且您希望将其与master进行比较:
git diff --name-only master
答案 3 :(得分:0)
我正在使用此命令查找两个版本之间更改的N个文件列表,此处N为50
git log --pretty=format: --name-only <SourceBranch>...<TargetBranch> | sort | uniq -c | sort -rg | head -50