为了更好地理解什么是合并队列及其有用性,让我们想象一下GitHub存储库在以下情况下的情况:创建了一个拉请求,它传递了CI,并且它得到了审阅者的批准。所有的复选框都是绿色的,就像合并按钮一样。1️⃣ 在所有检查都为绿色的那一刻到您按下合并按钮之间,另一个检查刚刚被合并,一个新的提交出现在主屏幕上。没有意识到这一点,你仍然认为你的PR是有效的,所以你按下了合并按钮。2️⃣ 轰,代码冲突:你刚刚打破了主分支!您刚刚合并的过时的拉请求在生产系统中引入了回归或中断。
😭 每天都有成千上万的工程师面临这个问题。🦾 使用合并队列解决了这个问题,因为在合并之前,它会更新任何与其基本分支不同步的拉请求(这要归功于自动重设基)。更新会迫使CI使用来自其基本分支的新代码重新测试pull请求,从而捕获任何潜在的回归。
单击卡片了解更多信息并阅读相关文档。
并行测试不同的PR,以便更快地合并它们。
一次批处理和测试多个请购单。节省CI时间。
冻结合并队列以提供最大的控制和灵活性。
使用多个队列管理您的请购单合并方法和优先级。
根据标签、所有者等,选择应首先合并的公关。
停止浪费CI时间和延迟。使用我们的合并队列定义智能、自动化的测试策略。
了解我们的合并队列如何使用Dependabot自动化和简化依赖项更新。
为什么一次测试并合并一个拉取请求?了解Mergify的批处理功能如何让您发货更快。
不要在处理CI延迟时浪费CI时间和金钱。使用我们的合并队列定义智能和自动化测试策略。在正确的时间触发并运行正确的测试。秒
厌倦了追逐评论员?使用Mergify的合并队列和工作流自动化,您可以通过自动化来自动化和优化审阅请求。
既然您已经理解了合并队列的基本概念,那么让我们通过几个演示来深入了解其实质。
Mergify是一个GitHub应用程序,您只需单击存储库即可安装。Fabien将通过该工具的屏幕录制向您展示我们的合并队列解决方案。
在本视频中,Fabien将演示Batches功能。使用Batch功能,Mergify可以同时检查多个pull请求的可合并性。您还可以观看我们频道上的功能演示视频。
在这个视频中,Fabien将演示Spec Checks功能。推测性检查将队列中的第一个PR放在合并序列中,并并行测试它们,以便更快地合并。您还可以观看我们频道上的功能演示视频。
只需三个步骤即可设置合并队列、自动化和优化代码合并过程。
Mergify是一个GitHub应用程序,您只需单击存储库即可安装。
用YAML编写规则。您可以根据任何条件匹配“拉”请求:分支、作者、标签等。然后使用队列操作在“拉”请求准备好后立即触发git合并,设置“拉”请求的优先级。
Mergify实时更新拉取请求状态,并通知您哪些条件匹配。一旦您的条件得到验证,Mergify就会使用您指定的方法合并请求。
要了解如何使用合并队列并从中受益,还有什么比让用户发表意见更好的方法。
Mergify如何优化Prophesee的开发过程,同时减轻开发人员的心理负担。
了解Mergify如何帮助DeepDrive达到汽车软件质量标准。
Back Market使用Mergify来优化发布流程,改善工程师的生活。
Contra选择Mergify是为了提高开发速度,并开始节省时间,通过自动化专注于核心项目,学习如何。
了解Orca Security如何使用Mergify保护其主分支并提高开发人员速度。
Productboard选择Mergify来扩展和解决开发中的问题。
Fundrise如何利用Mergify来抑制他们的痛点并留住工程师。
Globo如何部署Mergify以节省时间并改善工程师的生活。
Zivid团队如何通过自动化合并、提高效率和节省时间来扩大规模。
Epicery如何使用Mergify改变他们的工作方式,规范和自动化他们的编码过程。
Pitch希望在自动化整个流程的同时,准备部署其主要分支。
了解Luminar开发人员如何通过Mergify的功能节省时间和提高效率。
Argyle使用Mergify赋予开发团队自主权,同时自动化基础设施部署。
开发人员生活的变化是惊人的。当代码被破坏时,可能有一半的公司正在寻找问题并寻求解决方案。现在,Mergify会自动找到错误的PR并将其发送回所有者。
高级软件工程师
配置很有用,也很可靠,所以很容易。唯一困难的是决定在配置中放置什么。Mergify删除工作。只需使用它!
专职工程师
每个人都很高兴我们有了Mergify!这是一个巨大的成功。它可靠稳定。它不需要花费太多的工程精力来建立,它消除了这么多的挫折,同时节省了这么多CI成本!
软件工程主管