繁体   English   中英

git 差异排除合并 - 提交

[英]git diff exclude merge - commits

我试图在分支 FEATURE-1 中列出所有更改的文件,忽略它对分支 DEV 的合并提交,它最初是使用 git diff 创建的。 所以图表看起来像这样:

         x---y---z---w---feature
        /   /   /
---a---b---c-+-d-+-e---dev

当我提交时,输入

git diff --name-only dev...feature

我得到了我需要的东西。 但是在将功能分支合并到 dev 之后,想象我们现在在 w 上,使用这个命令我得到空白 output。 所以我需要以某种方式从 git diff 中排除所有合并提交。 有没有办法排除此类提交? 提前致谢。

我使用 git 版本 2.21.0.windows.1 Windows 10,用于本地项目

过时的答案(见评论)

只需在合并之前引用提交而不是dev

git diff --name-only <commit e>...feature

(如果合并提交是dev上的最后一个,您可以只使用HEAD^而不是首先在分支日志中搜索 hash )


评论后编辑:

您的图表似乎更像这样:

      X---Y---Z <<< feature
     /     \   \ 
A---B-------C---D---E <<< dev

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM