当前位置: 首页 > news >正文

git技法-对比master和release两个版本差异提交

有时某个项目遇到疑难问题,发现早期版本正常,现在的版本异常,而从代码或日志分析异常困难,这时通过二分法夹版本会更加快捷有效,而两个版本的差异提交如何看呢?

  1. 查看两个版本差异代码文件细节
:~/qcom/hal/mm-camerasdk$ git diff r2s/sm8250/master  r2s/sm8250/release --stat
 api/common/chituningmodeparam.h                             |      3 +-
 api/stats/chistatspropertydefines.h                         |      1 -
 core/chifeature2/chifeature2base.cpp                        |      9 +-
 core/chifeature2/chifeature2base.h                          |      1 -
 core/chifeature2/chifeature2requestobject.cpp               |      5 +-
 core/chiframework/chxextensionmodule.h                      |      6 +-
 core/chiofflinepostproclib/chiofflinepostprocencode.cpp     |      9 +-
 core/chiusecase/chxadvancedcamerausecase.cpp                |     11 +-
  1. 指定文件的详细差异
~/qcom/hal/mm-camerasdk$ git diff r2s/sm8250/master  r2s/sm8250/release api/common/chituningmodeparam.h  
diff --git a/api/common/chituningmodeparam.h b/api/common/chituningmodeparam.h
index 1b8476be283..fdb3c6cddda 100755
--- a/api/common/chituningmodeparam.h
+++ b/api/common/chituningmodeparam.h
@@ -43,7 +43,8 @@ enum class ChiModeUsecaseSubModeType
     Video    = 2,
     ZSL      = 3,
     Liveshot = 4,
-    IDEALRAW = 5
+    SnapshotReprocess = 5,
+    IDEALRAW = 6
  1. git diff r2s/sm8250/master r2s/sm8250/release 则会显示所有文件差异。
  2. git diff r2s/sm8250/master…r2s/sm8250/release 查看release中比master中多提交了哪些内容,反着写显示效果完全不一样。
:~/qcom/hal/mm-camerasdk$ git diff r2s/sm8250/master..r2s/sm8250/release   
diff --git a/api/common/chituningmodeparam.h b/api/common/chituningmodeparam.h
index 1b8476be283..fdb3c6cddda 100755
--- a/api/common/chituningmodeparam.h
+++ b/api/common/chituningmodeparam.h
@@ -43,7 +43,8 @@ enum class ChiModeUsecaseSubModeType
     Video    = 2,
     ZSL      = 3,
     Liveshot = 4,
-    IDEALRAW = 5
+    SnapshotReprocess = 5,
+    IDEALRAW = 6
 };

:~/qcom/hal/mm-camerasdk$ git diff r2s/sm8250/release..r2s/sm8250/master                    
diff --git a/api/common/chituningmodeparam.h b/api/common/chituningmodeparam.h
index fdb3c6cddda..1b8476be283 100755
--- a/api/common/chituningmodeparam.h
+++ b/api/common/chituningmodeparam.h
@@ -43,8 +43,7 @@ enum class ChiModeUsecaseSubModeType
     Video    = 2,
     ZSL      = 3,
     Liveshot = 4,
-    SnapshotReprocess = 5,
-    IDEALRAW = 6
+    IDEALRAW = 5
 };
  1. git diff r2s/sm8250/master…r2s/sm8250/release 查看release和master所有差异点
  2. git log r2s/sm8250/master…r2s/sm8250/release 查看以git log的方式展示差异
  3. git log -lefg-right r2s/sm8250/release…r2s/sm8250/master 显示提交在哪个分支上。
  4. git rev-list r2s/sm8250/master…r2s/sm8250/release 查看release中比master中多的提交,只显示commitid,不显示内容。
  5. 除了gerrit有Change-Id,切了分支也不会变化,但Commit id,切了分支后就变化了,所以对比commitid也无法对比差异。可以git log -1000 > master.txt ,再 git log -1000 > release.txt,然后对比工具对比master.txt和 release.txt发现最下面的都一样,最上面存在合入顺序上的差异,以及差异提交。可以把message里的一行描述grep出来进行对比。也可以把这一行message复制到excel里,出现两次就是都存在的提交,出现1次就是独有的提交。
    1:共有的
    2:master独有的
    3:release独有的

相关文章:

  • 搭建redis遇到问题:
  • PVE如何查看某块硬盘被哪些虚拟机使用
  • 使用axios发请求
  • 华为项目管理“六步一法”方法论全解析:目标确认、项目活动分解与日事清系统协同
  • 基于51单片机的贪吃蛇小游戏proteus仿真
  • 通过 C# 提取PDF文档中的图片
  • C++ | 文件读写(ofstream/ifstream/fstream)
  • 谷歌TV认证,谷歌TADA认证,谷歌电视认证介绍
  • C++ | 类模板
  • DBAPI设置服务器开机自启动
  • DeepSeek 助力心理医生小程序赋能!心理咨询小程序 线上咨询平台搭建
  • 如何保障话费api接口的稳定性?
  • 最新扣子(Coze)案例教程:最新抖音视频文案提取方法替代方案,音频视频提取文案插件制作,手把手教学,完全免费教程
  • 基于web的生产过程执行管理系统(源码+lw+部署文档+讲解),源码可白嫖!
  • 解决docker部署的容器第二天访问报错139的问题
  • 高密度任务下的挑战与破局:数字样机助力火箭发射提效提质
  • C#:接口(interface)
  • 【vue3】黑马小兔鲜儿项目uniapp navigationStyle
  • 常用学术期刊/会议查询工具
  • LiveData 和 MutableLiveData 的区别