你不知道的git冲突解决

2019 Java 开发者跳槽指南.pdf (吐血整理)….>>>



myeclipse 集成gitgit命令

使用git和svn一样,很容易造成代码冲突。大多是以下三种情况

myeclipse 集成git

  • 这是服务器上的文件。目前第三行是zxhtom1

    你不知道的git冲突解决
    服务器文件
  • 下面是本地myeclipse中的文件。第三行被改了。而且增加了一行

    你不知道的git冲突解决
    本地文件
  • 这个时候本地文件和服务器文件是冲突的。这个时候如果直接提交或者更新都会出错。

    • 直接提交

      你不知道的git冲突解决


      你不知道的git冲突解决


      你不知道的git冲突解决

      通过上面我们可以了解到,git已经拒绝了我们的提交。原因是我们本地版本落后于服务器的版本。所以我们必须要pull服务器的代码,跟服务器保持一致。
      在myeclipse 直接右键team --> pull ,会出现如下情况

      你不知道的git冲突解决

      本地文件会有head == 这些标签。我们人工处理冲突,然后就可以提交到服务器了。

    • 先更新

      推荐提交代码前先更新,这样不会对服务器造成影响。也可以尽量避免冲突。

      你不知道的git冲突解决

      报错原因大家都知道是因为冲突。这个时候我们先将本地所有文件add index ,这样才能到本地临时仓库里。有比较才能只能修改对应文件。
      然后我们在提交代码值本地仓库中。
      提交后再重新pull远程代码。这个时候就会出现文件冲突。(会有红色标出)

      你不知道的git冲突解决


      这个时候解决这个冲突我们可以选择右键-->Merge Tool 选择已本地为主还是以服务器为主
      我们还可以双击文件手动修改(合并文件)
      然后我们右键项目mark as megerd. 剩下的就可以提交了


git命令

  • 先 git pull origin master 提示禁止更新

    你不知道的git冲突解决


  • 我们需要先将代码提交到本地仓库中。

  • 然后在重新拉去代码。会自动合并。

  • 然后我们手动修改代码在重新提交然后提交远程。(git add,git commit , git push)

原文始发于微信公众号(新华前后端开发):你不知道的git冲突解决