如何通过PR删除提交的效果?

问题描述 投票:1回答:2

TL; DR:我需要删除master中的提交,这必须通过pull请求来完成。这是怎么做到的?

master上有一个提交需要删除,因为它提供的更改很糟糕。由于分支策略,我无法将提交直接推送到master。

我已经从master创建了一个分支,并使用git reset HEAD~1删除最新的提交。现在分支比较显示我的新分支在master之后是1次提交,因此它不允许我创建pull请求。

如何通过拉取请求从master中删除提交?

git azure-devops branching-and-merging
2个回答
2
投票

您无法使用Pull Request重写历史记录,您将被阻止执行导致强制推送的操作。

相反,您可以添加一个新的提交,以恢复您想要删除的提交。

git revert sha-of-commit-to-get-rid-of

这应该会导致创建补偿提交,您可以将其推送到您的分支。将其与Master合并将撤消您不喜欢的提交中的更改。

如果您确实需要删除master的当前HEAD,则需要(临时)强制推送权限和绕过策略的权限。


2
投票

您可以使用git revert还原现有提交并在新提交中记录更改。 见https://git-scm.com/docs/git-revert.html

© www.soinside.com 2019 - 2024. All rights reserved.