我一直在为我在GitHub上创建的项目做一些工作。我分叉的源项目最初是从Codeplex的Mercurial项目转换而来的。
现在,我发现其他人已经将Mercurial项目转换为GitHub,但是在稍后的阶段,最重要的是在git中添加了一些功能。我想分叉另一个存储库并重播我的提交,因为另一个存储库似乎处于活动状态。我还想用原始Mercurial存储库中的新更改来更新新存储库。
所以这是场景:
My repo:
hg1->hg2->hg3->my1->my2
|
->my3
hgN is the original Mercurial commits, myN is my git commits.
Other guy:
HG1->HG2->HG3->HG4->HG5->og1->og2
HG1-HG3 are identical to hg1-hg3. Same file tree but with different hash though.
ogN are git commits by that other guy.
What I want:
HG1->HG2->HG3->HG4->HG5->og1->og2
|
->my1->my2
|
->my3
假设我已经克隆了两个仓库,并且我的更改包括一些分支,那么我将如何创建合并的仓库?
如果我的更改在单个分支中怎么办。那我可以做一个简单的变基吗?
如果我理解正确,您想从2创建1个存储库(让它以http://hg_repo.com url为源,以my_repo作为http://my_repo.com的源)。您可以通过以下方式尝试:
git clone hg_repo
git remote add my_repo http://my_repo.com
git fetch --all
git checkout HG3
git branch my_new_branch
git cherry-pick my1
git cherry-pick my2
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句