Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在特定git标记之后获得合并分支的列表?_Git - Fatal编程技术网

如何在特定git标记之后获得合并分支的列表?

如何在特定git标记之后获得合并分支的列表?,git,Git,我可以在我的主分支上看到合并提交的分支,因为最后一个标记如下: git log$(git descripe--tags--abbrev=0)…HEAD--oneline 但是我无法从上面的命令中提取分支名称,因为当我将输出写入文件时,它只包含提交。我还尝试了git branch-r--merged,它更接近我想要的,但是我如何才能只获得特定标记后的分支?这将为您提供所有合并到master表单标记TagFromtoTagTo中的分支: git log--oneline--merges--date

我可以在我的主分支上看到合并提交的分支,因为最后一个标记如下:
git log$(git descripe--tags--abbrev=0)…HEAD--oneline

但是我无法从上面的命令中提取分支名称,因为当我将输出写入文件时,它只包含提交。我还尝试了
git branch-r--merged
,它更接近我想要的,但是我如何才能只获得特定标记后的分支?

这将为您提供所有合并到
master
表单标记
TagFrom
to
TagTo
中的分支:

git log--oneline--merges--date order TagFrom..TagTo | sed“s/Merge branch'/|/s/*/|&|/s/”到“master”/“

或者,您可以在最后一个标记出现时获取表单日期:

git日志-1——格式=%ai我的标签\u名称
e、 g.:
git日志-1——格式=%ai MT\u TAG\u NAME

(这将生成最后一次按下标记的时间)

使用该时间查找团队所有提交的列表


git log--after=“2018-08-02”-merges--name only--decoration--first parent--pretty=format:%s

这对我不起作用,我在我的问题中添加了更多信息请注意,这些分支不是合并的分支,它们是与提交相同的分支。它们可能表示已合并的分支(在目标分支是快进的情况下,因此提交匹配),但它通常会排除需要合并提交的合并,并且通常还包括尚未合并的分支;请参阅@JDBStillMembersMonica是的,所有分支都使用快进方法合并,我只是在查找合并的分支。@torek但我没有提交哈希值,我唯一可以搜索的是分支名称中的CHAL编号(如您在所附照片中看到的,所有分支都是这样开始的:CHAL-[number]+)。CHAL编号是我想从分支名称中提取的主要内容。但是当我执行git log$(git descripe--tags--abbrev=0)…HEAD--oneline | grep“CHAL-”时,它不会返回那些分支。我看到它们很奇怪,但它们不在命令本身的打印输出中。我在附加的照片中看不到任何东西(这就是为什么照片而不是剪切和粘贴的文本通常是个坏主意)。但是,如果要检查分支名称,请使用面向用户的
git branch
(列出它们)或
git作为每个ref
(这是在ref中迭代的管道命令,其中分支名称是特定的子集,即以
refs/heads/
开头的ref)。