git冲突-多人修改统一文件的同一位置

2018-12-01  本文已影响0人  浪漫天下

一、git fetch 和 git pull 的区别

1、    git fetch <远程主机名> <远程分支名>:<本地分支名>

         git fetch origin master :temp             //将远程仓库origin的master分支的

        git diff temp                    //比较本地代码和远程代码的区别    

        git merge temp               // 合并temp分支到本地的master分支

2、git pull <远程主机名> <远程分支名>:<本地分支名>

                             //取回远程分支的更新,并直接与本地分支合并

区别:git  pull 可以看作是git fetch 和 git merge 两个步骤的集合。

二、多人协作,当他人修改文件后,后提交的必须先pull在合并,并且在合并的时候会出现冲突

    1、当远程仓库的代码更新后,我们在push提交时会出现提交不了的情况,这时我们必须pull更新后的远程代码。但是在远程代码合并本地代码时发生CONFLICT冲突,这时需要我们手动解决冲突,最后再push提交到远程代码。

    2、解决方法  :

             git checkout  branch          //选择分支

            git fetch origin master       //拉取远程更新代码(只拉取不合并),这里不能git pull (合并有冲突)

            git rebase  origin/master   //查看conflict ,手动修改冲突 

            git add  .

            git rebase --continue       //add 后不需要git commit

            git push origin

上一篇 下一篇

猜你喜欢

热点阅读