如何获取功能分支与主分支的git差异。我只想要功能分支中的更改,而不包括主分支的更改。例如,如果功能分支有以下提交:
- b
- c
- e
- f
而master有以下提交:
- a
- d
- e
- f
然后我想要所有在提交b&c(不需要提交hash,只需要提交目录名(。到目前为止,我已经尝试过git --name-only diff master..feature
命令,但它似乎正在返回所有更改。
首先想到的是
git diff --name-only $(git merge-base master feature) feature
单击在git hub/bitbucket
中创建Pull Request
或您正在使用的任何内容。基本分支应为master
。你可以看到变化。包含/排除特征分支中的更改,然后将其合并到master
中。
@Mark的回答真的帮助我找到了我想要的东西,非常感谢。但对于本地分支名称,我也收到了很多条目,包括没有任何更改的.gitignore。对我有用的是以下内容,这是对马克最初答案的轻微修改:
git diff --name-only $(git merge-base remotes/origin/master remotes/origin/feature) remotes/origin/feature
这正是我想要的。