【问题标题】:Get a branch name from squashed commit of pull request从拉取请求的压缩提交中获取分支名称
【发布时间】:2019-09-26 00:44:13
【问题描述】:

当合并到我的主分支时,如何获取拉取请求的分支名称?试过git branch --merged,但没用。

【问题讨论】:

    标签: git shell github


    【解决方案1】:

    如果您使用任何流行的基于 Web 的系统来管理拉取请求,它们会在日志主题中粘贴分支名称和拉取请求信息。然后你可以像这样提取它:

    $ git log --pretty="format:%s"
    Add deploy procedure
    Add release management documentation
    Merged in feature/tkt-124/improve-changelog-output (pull request #334)
    Merged in feature/tkt-128/clean-up-more-menu-item (pull request #331)
    Merged in fix/tkt-113/disable-hyperlink (pull request #333)
    

    这个例子来自一个使用BitBucket来管理的系统。 GitHub 和 GitLab 类似。如果您使用自己的本土策略,您可能需要采用类似的惯例。

    在这里的输出中,前两个是 direct 提交到 master 分支。其余三个是合并 PR,同时显示分支和拉取请求编号。您可以使用awk 或类似的文本处理工具来提取您想要的特定部分。

    【讨论】:

    • 我们只是使用 github 来管理我们的 git,但是这些似乎不是标准的,有些消息有分支名称,有些没有它
    【解决方案2】:

    除非它在合并消息中,否则您不能 - 这对于记录的合并也是如此,但是壁球合并的 native-git 默认消息列出了单个提交而不是分支提示名称。无论如何,Git 分支名称都是本地存储的,而不是与管理记录相关联的正确方法。在提交消息上使用预告片是通常的方式,提交可以“在”任意数量的分支上。

    【讨论】:

      猜你喜欢
      • 2023-02-24
      • 2018-05-26
      • 2021-05-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多