16

我有一个用于 git 的自定义合并驱动程序,它可以帮助在数百名工程师共享的大型 monorepo 中合并锁定文件。因为锁文件的变动非常频繁,这些文件在审查 PR 时导致合并冲突的情况并不少见(因为master进展)。这意味着在使用此合并驱动程序在本地解决这些锁定文件的冲突后,应手动更新 PR 分支。

问题:有没有办法在服务器端的 GitHub(或Azure Repos)上配置此合并驱动程序,以便此驱动程序用于合并 PR 分支(而不是默认的自动合并)?

4

1 回答 1

8

GitHub 不提供使用自定义合并驱动程序的功能,而且我不知道有任何平台提供。部分原因是自定义合并驱动程序可以执行任意代码,并且大多数托管平台对代表用户执行任意代码不感兴趣。

此外,GitHub 上的合并是使用 libgit2 完成的,它的设计目的是在计算合并时快速高效,并在无法合并时提前中止,而自定义 Git 合并驱动程序不会提供这些功能。

您可以使用自定义 GitHub Actions 操作使用自定义合并驱动程序,然后将其推送到存储库,找到一些方法来自动合并您满意的拉取请求。在这种情况下,GitHub 会将分支显示为合并并相应地关闭拉取请求。不过,这是您可能获得的最接近的值。

于 2020-01-30T01:38:11.070 回答