我将一个公共github存储库分成一个私有的github存储库,并将代码克隆到多个服务器上。
今天我不小心从公共分支机构中取出了其中一个服务器,而不是私有服务器。我没有立即注意到我的错误并合并并将此污染的版本推送到github上的私有存储库。如何删除原始来源的所有提交,现在污染我们的分支。
我在SO上阅读并会
git branch -m 'clean'
)git push private_repo --delete <old_branch>
和git branch -D <old_branch>
)git branch -m <old_branch>
_)git push private_repo <old_branch>
)git branch -D <old_branch>
)并从私人仓库中取出已清理的分支(git pull private_repo <old_branch>
)这是正确的方法吗?是否有一个不那么复杂和安全的方式?
[更新]
我偶然发现了https://stackoverflow.com/a/448929/380038
我可以这样做:
git push -f private_repo <old_branch>
来自其中一个未受污染的克隆而不是5.和6.。
他们在答案中写道,推力不会删除提交,只是移动指针。当我想稍后从原始公共github仓库中提取提交时,这会产生问题吗?