是否可以从 Github 网站或 API 获取分支合并列表?

2024-06-20

在我们的工作流程中,不会“直接”提交到主分支。主分支仅接收来自 Pull 请求的合并。

我们可以将每次合并视为添加到主分支的新功能。

因此,我想获得一个合并到 master 中的列表,作为一种可视化随着时间的推移添加到产品中的功能块的方式。

git 或 Github API 是否公开此查询,或者我是否必须解析原始提交?


我使用以下脚本:

git log main --first-parent --merges \
        --pretty=format:"%h %<(10,trunc)%aN %C(white)%<(15)%ar%Creset %C(red bold)%<(15)%D%Creset %s"

解释每个论点:

  • main:您的主要分支的名称。可以省略,在这种情况下将使用当前分支。
  • --first-parent:跳过合并分支的提交。这会删除某人合并的条目master进入他们的分支。
  • --merges:仅显示“合并提交”(提交超过 1 个父级)。如果您想看到对主分支的直接提交,请忽略此参数。
  • --pretty-format: applies the following formatting:
    • %h:提交短哈希;
    • %<(10,trunc)%aN:作者姓名,截断为 10 个字符;
    • %<(15)%ar:相对提交时间,填充为 15 个字符;
    • %<(15)%D:标签名称,也填充为 15 个字符;
    • %s:提交消息的第一行。

结果还是很让人满意的:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否可以从 Github 网站或 API 获取分支合并列表? 的相关文章

  • Intellij Idea可以自动阶段更改吗

    经过几天的任务处理后 我决定看看已经完成了哪些工作git status来自 Git Bash 有些文件在Changes to be committed list 有些在Changes not staged for commit 有趣的是 我
  • 递归地将整个文件夹添加到存储库

    我正在尝试向 GitHub 上的 master 分支添加一个分支 并将一个文件夹推送到该分支上 分支的文件夹结构如下所示 Social App Source Code Dev Trunk Social App 以及所有源代码文件都在最后一个
  • 如何提交 git 标签?

    我已成功对中央 git 存储库进行 提交和推送更改 我现在意识到我想标记所有文件的当前版本 所以我这样做 git tag a 0 5 这样就成功了 但现在我尝试git push我被告知没有什么可承诺的 如何将新标签推送到中央存储库 注意gi
  • 如果提交格式不正确,是否可以拒绝 Github 上的提交?

    正如中提到的this https stackoverflow com a 6742691 1501285答案 可以在 Github 提交中引用问题 是否可以拒绝它的提交not格式化成这样 Example fix gh 12 foo bar是
  • 可以使用 git 项目并在 VS2013 中查看 TFS 工作项吗?

    所以我升级到了VS2013 希望能顺利进行所有开发 不过有一件事确实让我很恼火 我的团队使用 TFS 而我更喜欢 git 因此我使用 git tfs 来桥接两者以进行源代码控制 我们使用 TFS 工作项来跟踪错误和故事等 如果重要的话 我也
  • 从私有 GitHub 存储库迁移到公共和私有

    我使用 GitHub 上的私人存储库开发了一个客户项目 我们现在要做的就是开放其中的某一部分 并产生该项目的开源版本 我们的想法是 客户的版本将在此基础上构建 对开源版本所做的任何更改也应适用于私有版本 现在的问题是我不能将当前的 GitH
  • 从 master 分支部署特定功能

    假设我们使用两个分支进行开发 staging and master 在迭代期间 所有团队成员所做的所有更改都会定期合并到staging分支并出现在我们的暂存环境中 客户能够查看更改并提供反馈 在迭代结束时我们合并staging分支到mast
  • 仅当除 master 之外的所有分支都有推送的 TAG 时,Gitlab 才会触发 Pipeline

    我的 YAML 文件必须如何配置 以便仅在推送标签时触发一种情况 作业 构建 的管道 该标签可能位于除 master 之外的所有分支中 对于主案例 我有一个单独的工作 build master yaml 文件 问题 如果主分支获得标签 管道
  • 比较 2 次提交

    我没有找到任何关于获取两个文件之间差异的文档 我使用下面的代码使用坚固的方式提交文件 repo Rugged Repository new reponame email protected cdn cgi l email protectio
  • Git 更新文件时更改默认 umask

    我的 Git 有问题 我在 Google 和 StackOverflow 中搜索了解决方案 但没有任何帮助 问题是 每次 git 更新工作目录中的某些文件时 当我签出分支或合并分支等时 文件权限都会更改 以便添加 可写到组 标志 如果该文件
  • 是否可以在 Git 项目的所有分支中执行“grep 搜索”?

    是否可以运行git grep在 Git 控件源项目的所有分支中 或者还有其他命令要运行吗 问题 如何在 Git 历史记录中 grep 搜索 提交的代码 https stackoverflow com q 2928584 6309 建议 gi
  • 如何在 gitolite 中安装钩子

    我已阅读全部关于钩子的文档 https github com sitaramc gitolite blob pu doc 2 admin mkd using hooks similar https stackoverflow com que
  • 空提交的 Git 补丁

    我创建一个空提交 git commit allow empty m something important 有时它很有用 例如协调 2 个 或更多 不同的 git 树 然而 当我 git format patch 空提交被省略 因为它们不与
  • Git 粒度——解决一行内的差异

    git 基于行的粒度或 diff 粒度是否可以增加到单词 字母分辨率 每行多条语句或使用 git 编写纯文本是值得的 根据评论重新阅读问题时 我想我明白了您最初的意思 所以我将给出一个真正的答案 与伊斯梅尔 巴达维的一行评论 https s
  • dulwich - 从远程仓库身份验证克隆

    我找不到有关此主题的任何资源 我需要通过提供用户名和密码从私有存储库进行克隆 然而 当它们作为关键字参数提供给 dulwich get client from path 时 会出现错误 提示 未知参数 用户名 这似乎是一件简单的事情 但我找
  • 如何在git中定义ESC字符?

    我想在 git 输出中使用着色 例如 git log decorate color 当我发出这个命令时 我得到的输出看起来像ESC 1 32m where ESC是反色的 在我看来 这是一个有效的转义序列 除了 033必须发送而不是字符E
  • Git core.safecrlf 对具有相同行结尾的文件有不同的行为

    我有带有 VS 项目的 Windows 计算机 并且使用 Visual Studio 和 Cygwin 环境中的工具 包括 Git 有时 编辑后我会在文件中得到不同的行结尾 我想要简单的解决方案来检查文件的行尾一致性 然后再将其发送到存储库
  • Egit 拒绝接受 id_rsa

    我是第一次尝试在 Eclipse 中设置 egit 的 git 用户 这样我就可以继续通过 Eclipse 轻松编码 问题是 每次我尝试通过 egit 克隆存储库时 都会出现错误 无法列出可用分支 原因 ssh 电子邮件受保护 cdn cg
  • 使用可通过 FTP 访问的 Web 服务器进行 Git 托管?

    我运行一个 糟糕的 网站 托管在第三方网络服务器上 我可以通过 FTP 访问我的 Web 服务器 据推测 Git 本身具有通过 FTP 推送 拉取的能力 由于我的 Web 服务器已经可以随处访问 我希望将其用作集中式 Git 存储库 我可以
  • 检查 GitHub 令牌的范围

    我想被动地检查 GitHub 安全令牌的权限 范围 而不将某些内容推送到存储库中 我尝试了以下命令 我替换了 your username 你的访问令牌和我的存储库的 URL 但它显示一个错误 curl 3 URL 使用错误 非法格式或缺少

随机推荐