![](/img/trans.png)
[英]How can I merge a specific file from one branch into another branch in Git
[英]How can I merge a file history from a branch to another in git?
因此,首先检查下图,我试图代表我的需求
绿色方块是提交,黄色,棕色和红色是这些提交的一部分(在我的情况下,具体来说是提交中分布的3个文件)。
对开发人员没有进一步的更改
实际发生的情况:我在一个分支上工作,发现一些更改实际上对dev
分支有用,而实际上与dev2
分支dev2
。 所以我希望在dev
分支上进行这些更改。
git checkout
git merge
我实际上希望修改脱离dev2
分支并进入dev
分支,所以如果我执行checkout> commit,则修改将在两个分支上进行,这就是为什么我不愿意这样做。
这有可能吗? 我该怎么做?
您可以使用git log
来找到应该在dev(红色方块)中的最后一次提交的sha
,然后转到master分支checkout master
然后说git merge SHA
,其中红色方块的SHA。 这在git中很常见。 分叉的回购经常发生,合并到原始版本的更新中。
请记住,尽管这可以获取全部提交,但是我不确定这是否是您想要的。 如果您只想从这些提交中获取一些文件,则要困难得多。 那你应该看看这个问题 。
是的,这是可能的。 您需要做三件事:
git checkout dev
git cherry-pick yellow
, git cherry-pick brown
, git cherry-pick red
dev2
dev
: git checkout dev2
, git rebase --onto dev
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.