能否在GitHub的pull请求中更改其他人的代码?

10
在Github项目中,在“Pull Requests”部分,我看到一个人提交了一个拉取请求,但我发现他犯了很多错误,因此需要更正他的代码。而不是要求他改变他的代码,我能否自己来做(也就是说,我想自己更正他的代码)?如果可以的话,应该怎么做?
我也是该项目的成员,但我是新手 :)

2
你为什么要问我们而不是那个项目的其他成员呢? - Ken White
1
为什么不让他改代码,这样他至少能学到一些东西。另外,你想以另一个人的名义进行更改,这似乎相当奇怪。 - Ed Heal
严格来说,我并没有改变他的编程代码,而是在他的代码中更改了他的语言(日语)。由于与他用日语或英语交流有点困难,所以自己更改会更简单些。毕竟,这两种语言都不是他的母语。 - shintaroid
@KenWhite 这个问题是正确的。问题是“是否可能改变?”,而不是“我应该这样做吗?” 我也很感兴趣,因为我的项目中有很多贡献者的PR,我不想等待小修复。但是,我不能简单地推送到他们的PR。 - skywinder
@skywinder:不,可能吗 不是一个问题,因为这个问题范围太宽泛和模糊了。当然是“可能的”。问题在于它是否适当,这取决于项目关于如何使用它以及是否接受新成员提交的审核指南,这两者都无法由 SO 成员回答。(而你应该意识到你正在评论我三年半之前的评论,对吧?) - Ken White
2个回答

6

启用存储库维护者权限以对现有拉取请求进行更改

当拉取请求创建者从 fork 创建拉取请求或创建拉取请求后,可以在每个拉取请求上授予这些权限。

  • 在 GitHub 上导航到您的拉取请求的上游存储库的主页面。
  • 在拉取请求列表中,导航到要允许提交的拉取请求。
  • 在拉取请求的右侧边栏中,选择允许维护人员编辑。 您可以随时取消此选项来更改这些权限。

更多详细信息请参见 github 帮助页面: 允许从 fork 创建的拉取请求分支进行更改


简短总结

PR 的作者可以修改现有拉取请求,以让存储库维护者对您的分支进行提交。

为了允许您对其他 PR 进行提交 - 作者必须选择左侧的复选框: enter image description here


4
如何查看拉取请求者是否已启用复选框?我想编辑他的补丁。 - Nakilon

4
假设原作者足够负责,最好是请他们进行修正(除非只是明显的错别字更正)。他们可能有编写此代码的原因。
如果作者没有回应,您需要决定是在原地修复还是提交新的更改。请问哪种方式更清晰地反映了历史记录。如果提交将引入回归错误,则应该在原地修复(以避免破坏二分查找功能)。如果它处理一些情况,而你只想添加更多情况而不显著改变现有代码,则最好添加一个新的提交。
如果您以任何方式修改了现有提交,请确保在提交消息中留下注释,解释您所做的更改。一个典型的风格是在方括号中留下注释,并与任何Signed-off-by:行分组(如果适用):[your.email@example.com: Refactor new cases into a function for clarity] 例如:linux.git提交b44129b3。
来源:https://www.quora.com/GitHub-Is-it-bad-etiquette-to-change-someones-pull-request-before-committing

1
只有当你可以推送到该PR所在的分支时,才能进行推送! :) - Daij-Djan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接