停止创建 Issues
摘要
Laravel 已在某些仓库中禁用了 issue 创建,转而鼓励提交 pull requests,这引发了关于开源维护实践、包容性以及 AI 在参与开源项目中角色的讨论。
<p><a href="https://lobste.rs/s/qgxznz/no_more_issues">评论</a></p>
查看缓存全文
缓存时间: 2026/09/04 08:17
# 不再需要 issue | stitcher.io
来源:https://stitcher.io/blog/no-more-issues
## 不再需要 issue
撰写于 2026\-09\-04
昨天 Laravel (https://x.com/taylorotwell/status/2095516796748996843) 发生了一个有趣的变化:他们在多个仓库中禁用了创建 issue 的功能,转而鼓励大家提交 pull\-request:
需要明确的是,这只针对像 Socialite 和 Scout 这样的 Laravel 包,并不影响 Laravel 的主仓库。Taylor 提到框架仓库的 issue 功能仍然开放,尽管目前尚不清楚未来是否会保持不变。
作为一名开源维护者,我觉得这个变化很有意思,我有一些想法。
## 从维护者的角度来看
我认为这主要是一个有利于维护者的变化,而不一定对用户有利。从维护者的角度看,我必须承认:如果 issue 提交者愿意为解决方案提交 PR,我也更愿意投入时间处理这个 issue。一天的时间根本不够处理所有事情,很多时候必须分清主次。要求贡献者立即提交 PR 确实有可能减少分类处理的时间。
话虽如此,在 AI 时代,提交 PR 已经变得像提交 issue 一样简单。此外,我的经验告诉我,与人们先自己思考解决方案再提交 PR(并要求他们创建 issue 是鼓励批判性思考的好方法)相比,AI 生成的 PR 需要更多的审查精力。
我们稍后会再讨论 AI 的问题,先看看其他一些考虑。
## PR 垃圾信息
假设 Laravel 不小心发布了一个影响大量用户的 bug。很可能会在发布后几小时内收到数十个修复同一个问题的 PR。现在,你可能会说这和 issue 带来的额外工作量是一样的,因为如果 issue 功能仍然开放,很可能也会有数十个关于同一个 bug 的 issue 需要关闭。
我认为“PR 垃圾信息”主要问题不在于 PR 的数量,而在于它们触发的额外工作:重复的 PR 可能导致自动化 CI 运行次数大大增加。这是 issue 没有的问题。当然,GitHub Actions 可以配置为不对每个 PR 都触发,所以这可能终究**不成问题**(🥁)。
## 我们同舟共济
我认为这个变化凸显了一件好事,那就是我们同舟共济。开源不仅仅是抛出一个 issue 然后期望别人来修复它。它鼓励你做出贡献,而没有这些贡献,大多数开源项目都会失败。
话虽如此。Laravel 其实已经不再是一家纯粹的开源公司了。他们向一个源于开源的生态系统销售产品和服务。从商业角度来看,有一个团队全职从事开源工作,这个变化显得有些奇怪。
## 降低门槛
我常说,对于每个创建的 issue,很可能有成百上千甚至更多人遇到同样的问题,只是懒得报告。想想看:有人实际上花时间停下正在做的事,转到 GitHub 来报告和描述一个由**我**负责的代码中的问题。
这本身就是一个很大的贡献。这就是为什么我总是认真对待并感谢 issue 报告者,即使他们的 issue 是错误的,或者我不打算修复它们。他们已经投入了一些宝贵的时间,这只能令人感激。
所以我认为,开源项目应该尽一切努力降低贡献的门槛,而不是提高它。要求人们提交 PR 而不是 issue,确实提高了门槛。
## 包容性
最后,还有包容性的问题(与 AI 有关)。现在,我不认为 Taylor 是说你**必须**使用 AI 来提交 PR。我不认为任何开源维护者会在乎你**是否**使用 AI。然而,确实在一个你不熟悉的代码库中使用 AI 可能让更多人能够参与贡献。
不过,这个论点也有另一面:仍然有很多人不使用 AI,有些人受限于经济条件,有些人出于伦理顾虑拒绝 AI;而且,对于那些提交 issue 没有问题的人来说,在没有 AI 的情况下提交 PR 所需的投入可能太大。
还有程序员经验的问题。因为最终,LLM 生成的代码仍然需要有经验的人类眼光来审查。Taylor 自己也这么说 (https://github.com/laravel/vapor-cli/pull/285)。
无论是否使用 AI,这种变化确实将经验不足的程序员排除在贡献之外(即使只是通过 issue)。我们很多人都是以 Laravel 开始我们的编程之旅,很多人最初都是完全的新手。长期来看,这些人怎么办?
## 那么现在怎么办?
我不想从这个变化中得出任何确凿的结论。我只是列出了一些我的想法,并期待听到他人的看法。我能理解为什么开源维护者会选择 Taylor 的方法,尽管我也有疑问和保留意见。这确实是一种有助于减轻维护者负担的过滤方法,但我也觉得很难与我所相信的“每个贡献都很有价值,并且为新手提供学习机会”这一观点相协调——即使它*只是一个* issue。也许在 Laravel 这样的规模下,情况已经不同了?
请告诉我你的想法!你可以在此留下评论 (https://stitcher.io/blog/no-more-issues#comments)或在你阅读到此的地方留言。
相似文章
拉取请求限制正在减少噪音
GitHub 引入了持久的拉取请求限制,以帮助开源维护者管理贡献量并减少低质量噪音,尤其是来自 AI 生成的拉取请求。
我不再需要你的 PR
一位开源维护者解释为何现在更偏爱由 LLM 生成的代码,而非社区 PR:AI 辅助能降低风险与摩擦,将贡献价值转向反馈、缺陷报告与设计讨论。
8月12日星期三:GitHub的Pull Requests和Issues事件
GitHub经历了一次已解决的事件,影响了Pull Requests、Issues和Search,原因是数据库索引提示引用了迁移后已移除的索引。错误已得到缓解,正在监控完全解决。
FT:AI编程热潮令开源维护者不堪重负
《金融时报》报道称,AI编程热潮正用低质量的AI生成贡献淹没开源维护者,消耗着整个生态系统。具体证据包括cURL关闭其漏洞奖励计划、Ghostty禁止AI代码、tldraw自动关闭PR,以及研究表明贡献者参与度下降。
@github:发起拉取请求比以往更简单,但每次审查仍需要人力。引入拉取请求限制:…
GitHub 引入拉取请求限制,允许维护者限制无写入权限的贡献者可打开的 PR 数量,并为信任的贡献者设置豁免列表。