git代码冲突解决方法

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

场景:项目使用git进行代码管理,开发人员fork远程仓库,在fork分支上进行开发,新代码先提交到fork仓库,然后在合并到远程仓库。


提示:以下是本篇文章正文内容,下面案例可供参考

一、回退已提交未push的代码

1.git log 找到提交的记录 commit "id"。
2.git reset --soft  回退哪个提交记录的commit id。

二、回退已提交和Push的代码

1.git log 找到提交的记录 commit "id"
2.git reset --soft  回退哪个提交记录的commit id 
3.git push origin HEAD --force

**扩展:**
git reset --soft HEAD^ 回退到上一个提交版本(一个^表示回到上一个提交,两个就是回到上上一次提交,以此类推)
使用git reset --hard 也可以回退。git reset --soft 和 git reset ---hard之间的区别是:
git reset --soft 只会回退commit 记录,如果要再提提交,正常提交就行了。
git reset --hard 这种方式会彻底回退版本,本地源码也会被回退(也就是说不仅回退了commit记录,连commit的更改内容在本地也会被回退)。
如果通过命令不能解决,重新fork远程仓库就行了,本地源码也不会有影响。

三、在idea中可以使用Stash Changes和UnStash Changes解决冲突


在这里插入图片描述

1.Stash Changes可以将本地的改动进行隐藏,不参与commit和Push。

在这里插入图片描述
设置完后可以看到本地改动的内容都隐藏了。


2.从远程仓库pull最新代码到本地后,使用UnStash Changes查看之前隐藏的改动文件。

在这里插入图片描述
根据之前Stash Changes时的标记找到对应的stash记录,点击Apply Stash将代码回复到本地,这是有冲突的文件的,就会提示你进行解决。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值