合并请求限制正在减少干扰。
Pull request limits are cutting down the noise

原始链接: https://github.blog/open-source/maintainers/how-pull-request-limits-are-cutting-down-the-noise/

为了帮助维护者管理激增的开源贡献(自 2023 年以来增长了 3.6 倍),GitHub 现已推出可配置的**拉取请求(Pull Request)限制**功能。 维护者现在可以设定未获得写入权限的用户同时开启的拉取请求数量上限。这有助于鼓励贡献者更加审慎地提交,减少低质量提交带来的“噪音”,并使维护者能够专注于高优先级的工作。用户可以被加入豁免名单,且草稿状态的拉取请求不计入限制。 此功能是帮助项目维护者重获工作流控制权这一更广泛举措的第一步。后续更新包括: * **归档:** 隐藏低质量或垃圾拉取请求的方法。 * **议题(Issue)限制:** 针对传入议题的类似上限设置。 * **更智能的信任信号:** 基于账户注册时长或历史记录的自动豁免规则。 * **跨仓库控制:** 旨在减轻多个项目中大规模垃圾提交的工具。 这些工具旨在平衡开源精神与可持续性,确保维护者能够高效管理积压工作,同时不打击社区进行有意义贡献的积极性。

GitHub 为应对干扰而引入的拉取请求(PR)限制在 Hacker News 上引发了争论。尽管有些人认为这是抵御人工智能生成的垃圾内容和贡献者“扎堆”现象的必要防御手段,但许多用户认为这只是针对深层问题的一种表面修补。 批评者认为,针对单个存储库的限制无法阻止攻击多个项目的垃圾邮件发送者。改进建议包括建立基于声誉的系统、“举报为垃圾内容”工具,或是更先进的 AI 驱动分类方案。 一个反复出现的主题是上游贡献的减少。面对大量低质量、由人工智能生成的“垃圾”内容,许多开发者正逐渐放弃传统的 PR 工作流程,转而使用个人分支(fork)和供应商依赖(vendoring),从而有效地绕过了维护者这一中间人。其他人则认为,核心问题在于开源“社会契约”的瓦解,并建议需要引入基于代币的赏金制度或更好的声誉标记等新模式,以恢复贡献过程的价值。归根结底,虽然用户认可 GitHub 的努力,但大家普遍认为,该平台当前的模式难以适应大规模自动化贡献的现实。
相关文章

原文

More people are contributing to open source than ever, most of them trying to help. The challenge is keeping up with the volume. Creating a pull request has never been easier. Reviewing one still takes a human about as long as it ever did. When great contributions and low-quality noise land in the same queue, the ones that deserve attention are harder to find.

That’s why we’ve introduced pull request limits. It takes on the problem we hear most: too many incoming pull requests, too much low-quality noise, and too few ways to manage the flow.

How it works

A pull request limit sets the maximum number of pull requests a user without write access can have open at once in your repository. Hit the limit, and you must close or merge one before opening another. Pull requests opened by Copilot or another AI agent will counts toward your limit. Trusted contributors can be placed on a bypass list, where they are exempted from limits, but don’t gain full contributor access. Draft pull requests will not count towards your limit.

A screenshot of the 'Moderation options menu' open to the 'Interaction limits' submenu, with 'Pull request limits' at the top. The checkbox 'Limit open pull requests from users without write access' is selected.

GitHub already has interaction limits, but those are temporary cooldowns. These new pull request limits are persistent and configurable—giving maintainers the control they told us they were missing.

A cap also changes how contributors behave. When anyone can open a pull request in seconds, a polished change and a rough draft look the same in the queue. But when only a few pull requests can be open at once, a contributor must be selective and prioritize which contributions they want to be reviewed. That first judgment call happens before the pull request reaches you, and a smaller pool makes good work easier to spot.

It’s helped us want to review pull requests again. Knowing that someone hasn’t just opened 5–10 pull requests that are slop makes it much easier to want to look. Going forward we expect it to help us manage our backlog and ensure the things people are working on are the things we need.

Nicholas Tindle, AutoGPT

This feature is great. We’ve had problems on Homebrew for a while with enthusiastic users submitting many pull requests that need near identical review. AI further accelerated it. This allows us to still have outside contribution and maintainers contribute more while gating users to a level of pull requests we can cope with.

Mike McQuaid, Homebrew

At OpenClaw we get a huge volume of pull requests from the community and had to build our own bots for fighting spam. We are super glad GitHub has been able to develop out-of-the-box solutions for maintainers now to manage this volume.

Vincent Koc, OpenClaw

The cost to create outran the cost to review

These limits are especially crucial right now because of a change in the ecosystem. In January 2023, developers merged about 25 million pull requests a month across GitHub. Today that number tops 90 million—a roughly 3.6x increase. More people are building in the open than at any point in GitHub’s history.

Most contributions come in good faith, and even good-faith work can pile up faster than one volunteer can answer. In February, we wrote that open source was hitting its own Eternal September. A pull request limit gives maintainers some of that attention back, without closing the door on the next contributor.

What’s coming next: More controls for managing contributions

Pull request limits are just the first step. The same feedback is pointed straight at what comes after: more flexible, more granular control over how contributions flow in.

Archiving pull requests (shipping soon): Repository admins will be able to archive pull requests, hiding low-quality or spammy pull requests out of the main pull request view. Archived pull requests stay accessible to admins, but can be filtered out of the default list. We chose archive over delete on purpose: some organizations can’t permanently delete pull requests for legal or compliance reasons, and many maintainers want to keep them for context.

Issue limits (in development): The controls you now have on pull requests will be applied to issues: per-repository caps on how many open issues a user without write access can have at once, with a bypass list, plus an option to restrict issue creation to collaborators.

Smarter bypass signals (up next): The goal is less manual trust management. Instead of curating a bypass list by hand, you could let contributors clear a limit automatically based on real signals: a previously merged pull request in the repo, account age, or organization membership. That frees maintainers from curating lists by hand and gives them more time to focus on the work itself.

Cross-repository controls (exploring): A per-repository cap helps with repeated activity in one project, but it does nothing when someone opens pull requests across hundreds of repositories at once. We’re exploring ways to catch contributors who spray pull requests across multiple repositories, whether through trust signals, rate limiting, or other cross-repository controls. 

Thank you

Open source runs on the people who show up every day. To everyone who reviews pull requests late at night, mentors a first-time contributor, triages a backlog, files issues, or tells us where our tools fall short: thank you. You shaped this feature, and your input is critical in helping us decide what comes next. We’ll keep building with you.

Try the pull request limit in your repository settings, and tell us where it helps and where it doesn’t.

See you in the pull request queue. 🧡

Written by

Director, Open Source Programs at GitHub

I work on open source strategy and programs that support maintainers inside GitHub and across the ecosystem. I also serve on the Steering Committee for the TODO Group, where we help organizations use and sustain open source responsibly.

联系我们 contact @ memedata.com