受保护分支上如何撤销 Git 提交?

14
有没有一种方法可以撤销受保护分支上的提交?
我的意思是,如果你在非受保护分支上推送了一个错误的提交,你可以重置HEAD到上一个想要的提交或回滚错误的提交并强制推送。但是受保护分支不允许强制推送。在这种情况下如何修复?
编辑:指定(正确的)提交不是合并提交。

你不能将非受保护的分支重置到你想要的提交吗? - john Smith
2
可能是Git:如何反向合并提交?的重复问题。 - wimh
与拥有受保护分支管理权限的人员交谈。他们是接受您拉取请求的人,并且最了解如何修复它。 - msw
@johnSmith 是一个受保护的分支。我从最后一个正确的提交中创建了另一个分支(一个“重置点”),将HEAD重置到最后一个正确的提交并创建了一个新的分支。但如果可能的话,我想修复受保护的分支。 - trz
@msw不是一个选项。管理员不想/不能改变它。 - trz
1个回答

19
撤销错误的提交
git revert SHA-1    
git commit ....
git push origin <branch>

如果你的分支受到保护,无法执行 git push -f ...,那么你可以简单地执行 revert

git revert
撤销一些已存在的提交


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接