用 git 中的孤立分支覆盖主分支

Overwrite the master branch with a orphan branch in git

我用 git checkout --orphan orphan-branch 创建了一个新的孤立分支,并在该分支上做了很多提交。

现在我想用新创建的orphan-branch替换master分支,master分支的所有文件和历史都应该被文件和历史替换orphan 分支的。 最好的方法是什么?

git branch -m master old-master // 在本地重命名master为old-master

git branch -m orphan_branch master // 将 orphan_branch 重命名为 master locally

git push -f origin master // 强制更新远程主机

要替换 master 分支的历史和旧文件,您需要对其进行强制更新。

git push origin +your_orphan_branch_name:master

注意:这会删除分支主机的远程存储库中的全部历史记录。但那是你打算做的......