我有两个github回购,我都是管理员:
两者都是使用来自... svn存储库的git-svn创建的。现在,我想将两个回购合并为一个连贯的视图(请原谅我的术语不准确)。我想有一个回购(https://github.com/sghael/OSQA),有几个分支:
现在,我想做的是从我自己的存储库(ripper234)中获取更改,并将它们添加到sghael的存储库,就好像我最初从他那里分配。我想这可以通过创建一个新的fork来实现,并将我的更改合并到那里,但是我太新了,不能尝试自己完成这个。此外,当我查看sghael的项目并点击“fork”时,我只是被带到我的own repository,并且没有创建实际的fork。我是否必须重命名现有的仓库以使其正常工作?
答案 0 :(得分:1)
如果两个存储库都是使用与git-svn相同的选项创建的,那么提交将是相同的,并且两个存储库应该已经是forks(在git意义上)
要查看是否是这种情况,您可以执行以下操作:
git clone …/OSQA # this will clone the repo and create a remote named 'origin'
git remote add ripper …/osqa
git fetch
gitk --all # you should see all branches, check the svn-history is in fact the same between origin and ripper remotes
答案 1 :(得分:1)
我知道你希望sghael / OSQA成为ripper234 / osqa的一个分支。如果是这种情况,那么你应该重命名sghael / OSQA(例如sghael / OSQA_renamed)并从ripper234 / osqa创建一个新的分支。
然后唯一缺少的是将您想要的更改从sghael / OSQA_renamed推送到ripper234 / osqa。一种方法是将更改添加到新鲜的fork(sghael / OSQA)并创建pull请求,或者通过将其作为远程添加到sghael / OSQA_renamed存储库直接推送到ripper234 / osqa。