• [Git]10 如何提交更新时的冲突


    

    2branch都修改了同一个文件的同一部分时,这时,就会发生冲突,git的自动合并就会失败。产生了冲突就需要手工解决。

     

      1. 如何解决本地冲突

    比如,通过以下方式提交代码:

    $ git commit -m “file.txt: needs merge”

    如果执行git status会显示这些文件没有合并(unmerged),这些有冲突的文件里面会添加像下面的冲突标识符:

    <<<<<<< HEAD:file.txt

    Hello world

    =======

    Goodbye

    >>>>>>> 77976da35a11db4580b80ae27e8d65caf5208086:file.txt

    你所需要的做是就是编辑解决冲突,(接着把冲突标识符删掉),再执行下面的命令:

    $ git addfile.txt

    $ gitcommit

    注意:提交注释里已经有一些关于合并的信息了,通常是用这些默认信息,但是你可以添加一些你想要的注释。

     

      1. 如何解决远端冲突

    1.通过以下方式提交代码:

    git status

    git add file

    git commit-m “modified”

    git pushorigin master:refs/for/master   

    --当前本地的分支是 master

    --有冲突报失败,则继续按下面处理,否则提交流程成功结束;

    2.将远程最新代码下到本地新建分支上master_new 

    gitcheckout origin/master -b master_new    

    3.将前面本地第4 master分支的commit修改应用到当前分支

    gitcherry-pick <change-id>  

    4.人工合并--(具体说明)

    5.将解决冲突后的每个文件添加到commit列表中  

    git add<file>

      -- file为解决冲突后的文件  

    6、重新提交

    git commit

    或者直接

    git commit--amend

    提交时一定要把log信息中conflict信息删除,否则,会提示没有change ID

    7.重新提交到远端

    git pushorigin master_new:refs/for/master

     

    一切OK~~~



    作者:Younger Liu,本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 未本地化版本许可协议进行许可。

  • 相关阅读:
    Check the string
    最简单的
    第七届ACM程序设计竞赛 (SDIBT)
    Cutie Pie
    CSS3 :nth-of-type() 与 nth-child()选择器
    Ajax 完整教程 转载地址:http://www.cnblogs.com/Garden-blog/archive/2011/03/11/1981778.html(转)
    排序:二元选择排序
    排序:堆排序
    排序:直接插入排序 稳定 n*n
    排序:冒泡和改进
  • 原文地址:https://www.cnblogs.com/youngerchina/p/5624486.html
Copyright © 2020-2023  润新知