完全取代GitHub仓库,分支机构和提交

时间:2015-04-03 06:18:54

标签: git github

我在GitHub有一个项目,有11个分支机构。当我使用其中一种技术的后续版本重建项目时,这必须保持不变。

我在一个私人BitBucket仓库中重建了这个项目。这也有11个分支,以及完全不同的提交历史。

我已经镜像了原始的GitHub存储库,因此仍然可以公开访问“旧”代码。下一步是吹走原始GitHub仓库的内容,并用BitBucket仓库中的内容替换。

我不想删除/重命名GitHub仓库,因为有一些观察者和明星 - 那些人应该获得最新版本的代码。

所以问题是:如何删除GitHub仓库的分支和内容,并用其他分支,内容和历史替换?

理想情况下,我最终将BitBucket版本作为staging遥控器,将GitHub作为origin

2 个答案:

答案 0 :(得分:3)

我自己没有对此进行测试,但根据git push docs,您应该使用--mirror标记。

git push --mirror <name of github remote>

更新:我刚刚测试了它,它似乎按照我的预期工作。它将强制您的遥控器看起来与您的本地存储库完全相同,包括删除/添加分支和标签以及强制更新分支。

答案 1 :(得分:0)

如果我理解正确,您可以使用强制推送来替换GitHub存储库的内容。

git push -f