推送失败后如何撤消提交?

问题描述

我打算在dev分支中测试某些东西(版本号为0.1-> 0.2),所以我提交了更改,但没有权限直接将其推送到dev,然后创建了一个功能分支我发现该数字已经是0.2,然后将其更改为0.3并推送了此分支,然后创建了一个合并请求以将其合并到dev中。

我是git的新手,只是想知道将来如何防止这种混乱?推送被拒绝后如何恢复提交?

解决方法

您可以通过使用命令恢复上一次提交来解决

git reset HEAD~

这将撤消您的上一次提交,并使您对上一次提交所做的更改恢复为未提交状态。然后,您可以签出功能分支,进行提交,然后将功能分支推送到远程存储库。

,

您可以简单地从Git历史记录中删除提交。

如果尚未推送提交,则可以执行以下步骤-

  1. 继续执行您要删除的提交。

  2. 运行git rebase -i HEAD~2

  3. 在打开的文件中的提交条目之前,将pick更改为 drop

  4. 退出编辑器。现在您应该看到上一次提交已结束。

如果您已经推送了不需要的提交,则需要强制推送到远程。但是,强行推入仅适用于功能分支-绝不强行推入母带!