zoukankan      html  css  js  c++  java
  • Git解决冲突和diff用法

    假设这样一个场景,A和B两位同学各自建了两个分支来开发不同的功能,大部分情况下都会尽量互不干扰的,

    但是有一个需求A需要改动一个基础库中的一个类的方法,不巧B这个时候由于业务需要也改动了基础库的这个方法。

    那么在提交的时候便有可能会出现冲突conflicts  

     

    一定要记住这个单词,CONFLICT

    此时使用 git diff   

    查看具体冲突

     上图就是冲突的示例,

    冲突的地方==============分出了上下两个部分,

    上半部分 **HEAD** 是当前所在分支的代码

    下半部分是别人提交的代码

    此时进入代码中把判断哪些代码进行删改,

    我们只需要移除掉那些老旧代码,同时也要把那些 <<< HEAD  ==== 以及 >>>>>>baidu_activity 标记符号删除,最后进行一次 commit 就可以了。

    diff的用法

    diff命令是很常用的,在开发过程中,大家会经常做一些代码改动,但时间久了难免会忘记做过哪些改动,在提交之前需要确认下,这个时候就可以用diff来查看到底做了哪些改动,

    例如,有一个 a.md 的文件,做了一些改动,

    当输入 git diff 时,

    就会看到如下内容:

    需要注意的是,直接输入 git diff 只能比较当前文件暂存区文件差异,

    什么是暂存区就是还没有执行 git add 的文件

    当然除了与暂存区做比较之外,他还可以有其他用法,如比较两次 commit 之间的差异,比较两个分支之间的差异,比较暂存区和版本库之间的差异等,具体用法如下:

    • git diff <$id1> <$id2>                 # 比较两次提交之间的差异
    • git diff <branch1>..<branch2>    # 在两个分支之间比较 
    • git diff --staged                          # 比较暂存区和版本库差异
  • 相关阅读:
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    软件工程实践总结
  • 原文地址:https://www.cnblogs.com/lovecode3000/p/12254918.html
Copyright © 2011-2022 走看看