确定分支何时合并到另一个分支

问题描述 投票:0回答:1

我有一个小型 git 存储库,其中有多个分支

我需要确定何时以及谁将特定分支合并到 master 中。 我使用命令查看合并的分支

git branch --merged

但我还需要确定这件事是何时、由谁做的

使用更新

git log --merges

例如我有两个分支

  • 大师
  • 发布/1

执行

git log --merges
给了我

commit 430c9e85e527ab1a63693265e220a8c72ed2fd14
Merge: c5ce3bffc 3ce4f8bff
Author: author1
Date:   Thu Feb 23 07:15:55 2017 +0300

    Merge branch 'master'

commit a909cf5d0100ef1621965f1f4275bd05c1495427
Merge: c2a2a4430 bfda36db3
Author: author1
Date:   Thu Feb 23 05:41:32 2017 +0300

    Merge branch 'feature/3'

commit c5ce3bffc4bde8dc60ae264781e9c990e67daaa1
Merge: 4107e0817 b03ef505f
Author: author2
Date:   Tue Feb 21 11:00:56 2017 +0300

    Merge branch 'release/1' of https://tfs.awesomecode.com/EpicSystems/_git/EPC into release/1

commit b03ef505f177eaf82a31164a97daa1d63c4146f8
Merge: 3f9b75bb7 0ee5e531d
Author: author1
Date:   Tue Feb 21 09:20:31 2017 +0300

    Merge branch 'release/1' of https://tfs.awesomecode.com/epicsystems/_git/EPC

所以我不太明白日志中最后两次提交的作用..不清楚哪一个将release/1合并到master中

git
1个回答
5
投票

您可以使用 git log 来实现。

master
分支上执行

$ git log --merges

查看所有合并到

master
的日志。


为了更好地直观地了解正在发生的事情,请尝试一下

git log --decorate --oneline --graph

  • --decorate
    将向日志条目添加注释,显示诸如
    HEAD
    之类的信息以及此特定提交代表哪个分支提示,例如
    origin/release/1
  • oneline
    将产生更简洁的表示。每次提交只会显示主题行(你显然可以省略这个,但我发现这样更容易理解图表)
  • graph
    将打印提交历史记录的图形表示,其中
    *
    代表提交,而行则指示特定提交的父级

图表将在顶部显示最新的提交


从这里开始,这是猜测,因为我不知道你的存储库的历史是如何演变的,但我猜测如下:

  • 我真的不知道最后一次提交是什么意思,因为它似乎缺少
    into
    部分
  • 第二次提交(从底部开始)可能来自于对
    author2
    分支的
    release/1
    更改与对同一分支进行的其他更改之间的冲突。这导致
    feature/1
    合并为
    feature/1
    (可能是某种
    git rebase
  • 然后
    feature/3
    被合并了
  • 然后
    master
    分支被合并了
© www.soinside.com 2019 - 2024. All rights reserved.