zoukankan      html  css  js  c++  java
  • git 解决二进制文件冲突

    1.冲突的产生

    当我们向远程git服务器提交某一个文件的修改时,恰巧这个文件相同的修改地方其他人也有修改,并且已经提交到服务器,这时冲突就产生了. 通常,当我们合并两个相同的地方都有修改的分支时,都会产生冲突.

    2.文本文件冲突解决

    出现冲突时git不知道如何自动合并,需要我们解决冲突手动合并. 如果是文本文件,git会在有冲突的地方作上标记(如 HEAD >>> ==== <<< HASH_ID等),标记哪些是当前分支的修改,哪些是其他分支的修改.参考这些标记,解决冲突比较简单.

    3.二进制文件冲突解决

    如果二进制文件发生冲突,不方便查看git插入的冲突标记, 解决比较棘手,通常最简单的解决方法是提前沟通好,相同修改的地方二选一. 
    git checkout FILE --ours [ --theirs ]

    –ours 表示检出当前分支,即保存当前分支的改动,丢弃另外分支的改动. 
    –theirs 表示检出另外分支, 即保存另外分支的改动,丢弃当前分支的改动.

    举个栗子: 
    有分支A和B, 当前我们在分支A上, 需要把分支B合并到分支A, HashMap.c文件发生冲突了. 
    git checkout HashMap.c –ours 表示冲突的地方采用A分支上的修改,丢弃B分支上的修改. 
    git checkout HashMap.c –theirs 表示冲突的地方采用B分支上的修改,丢弃A分支上的修改.

    解决完冲突后,就可以像往常一样 git add git commit了.

  • 相关阅读:
    CBP是什么?
    编码器变换及量化的流程?
    CABAC与CAVLC有什么区别?
    如何在JM8.6编码端提取QDCT?
    宏块都有哪些类型?
    H264帧间预测流程?
    H264子宏块的划分有哪些?
    H264提供了哪些帧内预测?
    加强预测编码?
    centos7 下通过nginx+uwsgi部署django应用
  • 原文地址:https://www.cnblogs.com/richard1015/p/8581336.html
Copyright © 2011-2022 走看看