English 中文(简体)
如何将我的代码与来自 Git 中不同仓库的代码合并
原标题:How to merge my code with code coming from a different repository in git

一个月前,我开始在Github的一个私人仓库里 研究一个新的功能。我克隆了该仓库并将其分包。我从那时起就一直在研究这个分支。

与此同时,代码被移到 Github 上不同的存储处。 现在,我需要将我所做的与新动态合并起来。

我的想法是:

- 新仓库1号登出

2 查找我仓库中和新仓库中的最后一项共同承诺。 这将是主分支的最后一项承诺 。

3 - 在主分支与我的工作分支之间划一个补丁。

4 - 对新仓库应用补丁。

这是正确的吗?3号和4号命令应该是什么?

最佳回答

git- rebase 应当做你想做的事, 也就是说, 在新回邮上重放您的更改 :

git remote add new-repo /path/to/new-repo
git fetch new-repo
git checkout hacking-branch
git rebase hacking-branch new-repo/master
问题回答

如果新存储库确实是旧存储库的叉/ 区块, 那么您应该能够将 < code>. git/ config 中的 URL 替换为新的 URL, 然后 < code> git 获取 以从新工程中拉出所有内容。 一旦完成此任务, 您可以酌情使用 < code> git rebase 或 < code> git 合并

如果您不想只跟踪一个工程, 而想要跟踪两个工程( 旧工程中是否有正在开发的, 您可能还是偶尔会拉进来吗?), 那么您就可以将新仓库添加为另一个远程 - git 远程添加新 proj & lt; URL> 。 您甚至可以将旧仓库重新命名为 < code> 源代码 以外的东西, 这样您就可以使用新仓库的 < code> 源代码 名称 。

这将避免需要走补丁路线,因为你实际上只是指着你的本地仓库在新的地点,并且可以直接进入所有新的承诺和旧承诺。





相关问题
git confusion - cloning a repo is returning a past version

Im having some confusion with my git usage. I cloned a repo from one comp to the other, and the new clone is the state of the original that was active some time ago. So its cloning a past version. ...

Appropriate strategy for tagging and hotfixing with git

I was wondering if the strategy I m using for tagging and hotfixing tags (which then I use for deploying rails applications) with git is appropriate. For tagging I just tag a commit of the master ...

Tips on upgrading CVS to git/hg?

We still use CVS, I use git and hg for my personal use though I m still a novice at both, but I realize they re much more modern and better, faster, distributed, etc. It s just everyone is so ...

Using Git in a TFS shop

Using Git at home has spoiled me - I now find using TFS at work to be a bit of a drag and want to explore the possibility of using Git locally and syncing somehow with TFS. I figure there are a few ...