开发者

Git - Merge branch from a different repository

I hope this does not seem to obvious. I have two git repository. We decided to split one branch from the first repoistry into a git sub module. Now I have been using this sub module, however people have been pushing commits to the first repository into the branch that was made into a sub module.

How can I merge the changes from the branch in the first repository into newly created second repository? (Which we now use as the sub-module)

I have tried adding another remote into the secon开发者_如何学编程d repo and merging that branch across, using:

git remote add otherOrigin git-Blah@blah.blah:originalRepo.git
git merge otherOrigin originalBranch

However I get:

fatal: 'otherOrigin' does not point to a commit

Thanks


If the two repos, for the given branch (the one split as a sub-module in Repo1, while being kept in Repo2), initially have a common history, then it should be possible, in theory, to:

  • split the branch in Repo2 as an individual repo
  • add that individual repo as a remote of the current submodule repo
  • try and perform the merge from there.

But that can quickly become a drag if you have to repeat that process on a regular basis (unless you can script it).


clone your repository. Now use filter-branch to just keep the changes to what should be in your submodule. add this repo as a remote of your submodule. fetch the branch from that new remote. Use git rebase --root --onto to "place" the changes to some point in the history of your submodule.

Hope this helps.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜