解决冲突,删除历史提交

解决冲突
当本地代码与服务器提交有冲突时,会出现以下错误提示,并进入MERGING状态。
CONFLICT(content):Merge conflict in XXXX/XXXX
AutoMatic merge failed;fix conflicts and then commit the result.

解决方法:
退出MERGING 状态:git reset --hard head
XXXX/XXXX为当前出现冲突的文件,本地找到目标文件,目标文件中会有冲突提示:

<<<<<<<< HEAD
你的代码
===========
别人的代码
 >>>>>>>>>> xxxxxxxxxxxxxxxxxxx

根据情况进行修改。
1.重复的修改,则选择删除其中一段代码,再把冲突标识符(<< == >>三行)删除
2.均须保留,则直接删除冲突标识符
冲突解决后再进行提交。

删除历史提交
在协作开发的过程中,会有许多人为因素出现包含错误、安全漏洞、敏感信息等的不良提交。如果这些不良提交已经被合并到主线分支,就可能会对项目的其他部分造成负面影响出现不良提交后果,此时需要进行删除历史提交:

 #查看历史提交,找到需要删除的提交并记录SHA(commit 后的字符串),按q退出
 git log

在这里插入图片描述

#打开编辑器,进入需修改的提交,SHA替换成需要修改的SHA
git rebase -i SHA

进入编辑器后将编辑器中pick 改为drop,按ESC,:wq回车保存退出
再次输入git log 会发现提交已被删除。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值