问题描述
我打算在dev分支中测试某些东西(版本号为0.1-> 0.2),所以我提交了更改,但没有权限直接将其推送到dev,然后创建了一个功能分支我发现该数字已经是0.2,然后将其更改为0.3并推送了此分支,然后创建了一个合并请求以将其合并到dev中。
我是git的新手,只是想知道将来如何防止这种混乱?推送被拒绝后如何恢复提交?
解决方法
您可以通过使用命令恢复上一次提交来解决
git reset HEAD~
这将撤消您的上一次提交,并使您对上一次提交所做的更改恢复为未提交状态。然后,您可以签出功能分支,进行提交,然后将功能分支推送到远程存储库。
,您可以简单地从Git历史记录中删除提交。
如果尚未推送提交,则可以执行以下步骤-
-
继续执行您要删除的提交。
-
运行
git rebase -i HEAD~2
-
在打开的文件中的提交条目之前,将
pick
更改为drop
。 -
退出编辑器。现在您应该看到上一次提交已结束。
如果您已经推送了不需要的提交,则需要强制推送到远程。但是,强行推入仅适用于功能分支-绝不强行推入母带!