我有一个 Git/Gitlab 存储库。我们曾经直接提交给 master,但我们决定像世界其他地方一样为这个版本切换到使用功能分支。
我们需要将远程主机重置为上次发布后的状态。如果有人已经直接提交给 master,我如何将其重置为干净状态,删除上次发布之后的所有历史记录?
我现在已经花了大约一个小时进行谷歌搜索,但找不到这个特定问题的答案。对不起,如果它看起来多余,这似乎是一个没有明显答案的简单任务!
最佳答案
要重置本地分支,
git branch -f master last-release
要重置远程分支,
git push -f origin last-release:master
其中 last-release
是您要将 master
重置为的 ref(提交 ID 或分支)。
(这些都不会影响您的工作树;如果您愿意,您甚至可以从裸仓库中执行这些操作。)
关于Git 删除超过特定提交的远程历史记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22674267/