我有一个Git / Gitlab存储库。我们曾经直接承诺掌握,但我们决定转而使用像本世纪其他地方一样的功能分支。
我们需要将远程主控器重置为最后一次发布后的状态。如果有人已经直接向主人提交,我怎样才能将其重置为干净状态,删除上一版本之后的所有历史记录?
我现在花了大约一个小时的谷歌搜索,无法找到这个具体问题的答案。对不起,如果看起来多余,似乎这么简单的任务没有明显的答案!
答案 0 :(得分:36)
要重置本地分支,
git branch -f master last-release
要重置远程分支,
git push -f origin last-release:master
其中last-release
是要将master
重置为的引用(提交ID或分支)。
(这些都不会影响你的工作树;如果你愿意,你甚至可以从一个简单的仓库中做到这些。)
答案 1 :(得分:5)
有时,你在Stack Overflow上发帖,你会在一秒钟之后立即弄明白:
$ git reset --hard HEAD~9
$ git push --all --force
现在删除您的本地仓库,重新克隆。