You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Git技术问询:如何验证release_1.0分支所有提交是否已合并至master?

排查release分支未合并到master的遗漏提交方法

1. 快速列出release分支独有的提交

用Git范围日志命令直接筛选出release_1.0上存在但master没有的提交:

  • 简洁版(仅显示提交哈希和标题):
    git log --oneline master..release_1.0
    
  • 图形化版(直观展示分支关系):
    git log --graph --oneline --decorate master..release_1.0
    

该命令会精准列出所有仅存在于release_1.0的提交,快速定位遗漏项。

2. 用git cherry标记已合并/未合并提交

这个命令专门对比两个分支的提交状态,直接标注未合并项:

git cherry -v master release_1.0

输出结果说明:

  • 前缀+:该提交已合并到master
  • 前缀-:该提交仅存在于release_1.0,未合并到master

3. 生成分支差异文件清单

若需聚焦文件变更而非提交记录,可使用差异命令:

  • 仅显示有差异的文件名:
    git diff --name-only master...release_1.0
    
  • 显示完整文件变更内容:
    git diff master...release_1.0
    

注意使用三个点(...)会排除master在release_1.0创建后新增的提交,仅对比release_1.0相对于分支创建时的master的所有变更。

4. 合并冲突时的分步排查技巧

直接合并冲突过多时,通过临时分支分步处理:

  1. 创建基于当前master的临时分支:
    git checkout -b temp_merge master
    
  2. 合并release_1.0到临时分支:
    git merge release_1.0
    
  3. 仅查看冲突文件:
    git diff --name-only --diff-filter=U
    
  4. 用可视化合并工具逐个解决冲突,同时结合git cherry的结果,标记未合并提交对应的变更。

特殊情况:提交被Rebase过的处理

若release_1.0有Rebase操作导致提交哈希变化,用以下命令对比:

git log --no-merges --left-right master...release_1.0

输出说明:

  • 前缀<:该提交仅存在于master
  • 前缀>:该提交仅存在于release_1.0

内容的提问来源于stack exchange,提问作者asim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 11:15:11