不羁的饺子 · 基于计算机视觉的 Transformer ...· 2 天前 · |
害羞的饭卡 · 使用虚拟机 UUID· 4 月前 · |
爱笑的大脸猫 · 在线直播-中华人民共和国民政部· 5 月前 · |
勤奋的铁链 · C#事件请求处理程序的结构和特点_函数计算( ...· 10 月前 · |
睡不着的双杠 · ABAP 内表总结-2 ...· 10 月前 · |
我在我的项目中做了相当少的更改(我是在一个远程分支上工作,而不是在主程序上),我提交了它们,并在BitBucket上创建了一个拉请求,并将分支合并到Master中。我忘了在承诺之后推动我的改变。现在,在尝试将当前分支切换到我的远程分支并在合并之前恢复到提交之后,我成功地将所有更改返回并备份到系统的其他地方。我现在要做的是撤销我所做的错误合并。每次单击合并并选择“反向提交”时,都会收到以下错误消息:
“错误:提交是一个合并,但没有提供-m选项。 致命:还原失败“
现在的树枝看起来是这样的:
我想要删除合并,并将它带到一个状态,这样它就不再说
master(4 behind)
了。
发布于 2020-06-02 19:07:49
一步一步地走:
恢复合并提交
Master被合并并以冲突/不需要的代码进行开发。
使用Sourcetree: : 还原
“Reset develop to this commit”
。
hard
,从左侧底部下拉。
Its .
此后不应该有拉力。如果发生任何拉断,请按以下方式使用终端进行还原。
现在将母版合并到Development. 中。
使用终端恢复:
git reset --hard <commit_before_merge id long one>
型
git push -f
,并
its .
将母版合并为.
发布于 2019-01-10 12:19:18
我找到了另一种不用命令行的方法,有点难看,但我做了这件事。
因此,对要回滚的提交进行硬重置,转到项目文件夹(在Mac上使用Finder,在Windows上使用Explorer ),并复制整个文件夹。您在这个“复制”文件夹中所拥有的是您希望在此过程结束时的位置。
好吧..。返回到源树,然后签出头(最新提交到远程),然后再次导航到项目文件夹,确保您可以看到隐藏的文件夹,因为您必须能够看到一个名为".git“的文件夹。
从当前项目中删除除".git“之外的所有内容,这意味着当前项目除了名为".git”的文件夹外,没有其他任何内容,然后导航到‘复制’文件夹,复制除".git“文件夹之外的所有内容,并粘贴当前项目中的内容(只有".git”文件夹)。
好了。转到源树并提交更改,您的项目正是您想要的位置,并且删除了所有更改。
结束了。
Obs1:现在删除“复制”文件夹,从脏文件中清除您的pc。
Obs2:这个过程不会从Git中删除您的更改,提交将出现,您要做的是删除并提交更改。
发布于 2021-10-08 15:34:50
无损法
我遇到了一种情况,那就是我以前的解决方案不是一个选择。我无法强迫自己去掌握,即使我能做到,这对其他的开发人员来说也太具有破坏性了。
我发现了这个新的方法,它100%地保留了git历史,并且对团队中的其他开发人员来说是完全没有破坏性的。
就这样!
(您可以通过右键单击git历史记录中的提交并从上下文敏感菜单中选择选项来执行大多数这些操作)
更新:步骤4没有显示任何更改?
如果发生这种情况:
https://stackoverflow.com/questions/22537097
复制相似问题
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2024 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号: 粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287