[英]How to find out what files were changed in a git branch (not the difference between two branches)
我有一个名为feature_219
的分支,它是在不久前从master
创建的。 自从转移以来,两个分支上都有许多文件发生了变化。
现在我试图弄清楚在处理feature_219
分支时哪些文件发生了变化。
在做了一些研究之后,我发现git diff --name-only master feature_219
可能会有所帮助,但事实证明这个命令告诉了两个分支中不同的所有文件。 我试图用这个命令寻找一些选项,但没有任何对我有用。
有没有办法只列出那些在feature_219
分支中更改的文件?
git diff --name-only master...feature_219
应该做的伎俩。 注意三个点。 如果您目前在分支feature_219
git diff --name-only master...
就足够了。 两个分支的顺序非常重要。 在第一次调用中交换两个分支将在您启动feature_219
分支后master
分支提供所有更改。
命令git diff A...B
应解释为“给我从A
到B
的提交中发生的所有更改”。 如果A
不是B
的父(在这种情况下),则共同的祖先将用于回答这个问题。
您可以使用git merge-base
查找两个分支的共同祖先,然后获取差异。
git diff --name-only feature_219 $(git merge-base master feature_219)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.