拉取远程代码时与本地代码冲突的解决方案之一

一、本解决方案基于IDEA开发工具讲解

①基于stash

    首先,右击项目--》git---》repository----》pull 拉取远程项目,出现failed时,不要慌张不要悲伤,黎明的时光会到来,稳住心态,开启灭 ‘’灭霸模式‘’。

    接着我们继续操作:右击项目--》git---》repository----》stash changes ,将你本地的代码先暂存git中的临时区域,并不会推送到远程的server。

    接着我们拉取远程代码:右击项目--》git---》repository----》pull 拉取远程项目,这是我们消灭的“灭霸”,显示successful,这时我们成功拉取了代码。

    操作完上面的那步,千万别忘了我们自己暂存的代码,继续操作如下步骤:右击项目--》git---》repository----》Unstash changes ,这时我们暂存的代码就会恢复,将冲突的部分以你的代码为主。这时候,我们的冲突解决了。

②基于commit,但不推送方式 (个人实践)

     A、首先,先拉取代码,发现跟本地代码冲突。右击项目--》git---》commit directory,点击 commit,将你本地代码保存好,这里不需要push.

     B、本地代码commit后,右击项目--》git---》repository----》pull 拉取远程项目,修改的代码跟远程没有正面冲突(非同文件冲突),则拉取后的代码会自动与本地代码合并。

     C、若是存在同文件冲突,拉取代码的时候会出现提示,然后点击 view 视图,出现 远程代码 代码合并区 本地代码,这时候根据具体冲突,一个一个合并。

      D、解决B情况后,直接右击项目--》git---》rep ository----》push,向远程提交代码。解决C情况,需要再commit,再点击push。

  二、普及一下stash知识:

git stash 会把所有未提交的修改(包括暂存的和非暂存的)都保存起来,(stash是本地的,不会通过git push命令上传到git server上).用于后续恢复当前工作目录。

git 常用命令推荐:https://www.cnblogs.com/chenwolong/p/GIT.html

 

你可能感兴趣的:(版本控制工具)