【问题标题】:Is it possible to change other people's code in pull requests (Github)?是否可以在拉取请求(Github)中更改其他人的代码?
【发布时间】:2016-08-21 05:43:22
【问题描述】:

在一个 Github 项目中,我看到一个人在 Pull Requests 部分提出了拉取请求,但我发现他犯了很多错误,因此需要更正他的代码。不让他改他的代码,是不是可以自己做(也就是我想自己改他的代码)?以及如何?

我也是那个项目的成员,而且我是新人:)

【问题讨论】:

  • 你为什么要问我们而不是该项目的其他成员?
  • 为什么不让他修改代码——至少他学会了。您还想更改另一个人的名字 - 这似乎很奇怪
  • 严格来说,我不是在更改他的编程代码,而是在更改他的代码中的语言(日语)。自己改要简单得多,因为和他交流有点困难,用日语,或者用英语(都不是他的母语)。
  • @KenWhite 他的问题是正确的。问题“有可能改变吗?”不是“我应该这样做吗?”我也很有趣,因为在我的项目中从贡献者那里得到了很多 PR,我不想等待小修复。不过,我不能简单地推动他们的公关。
  • @skywinder:不,可能不是问题,因为这太模糊和范围太广了。当然它是可能。问题是它是否合适,这将取决于项目关于如何使用它的指导方针,以及他们是否接受项目新成员的提交而不进行审查,SO 成员都无法回答这些问题。 (而且您知道您正在将您的评论发布到我的 3 1/2 年前的评论中,对吧?)

标签: github pull-request collaboration


【解决方案1】:

对现有拉取请求启用存储库维护者权限

拉取请求创建者可以在他们最初从分叉创建拉取请求时或在创建拉取请求之后为其每个拉取请求授予这些权限。

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

更多详情见 github 帮助页面:Allowing changes to a pull request branch created from a fork


TL;DR

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

为了让您可以向他人提交 PR - 作者必须从左侧设置复选框:

【讨论】:

  • 如何查看拉取请求者是否启用了该复选框?我想编辑他的补丁。
【解决方案2】:

假设原作者反应足够灵敏,最好让他们修复它(除非更改是明显的错字修复,也许)。他们可能有理由以他们的方式编写它。

如果作者没有响应,而您正在决定是修复它还是使用新的提交,请问问自己,哪种方式的历史读起来更清楚。如果提交会引入回归,您可能应该将其修复到位(以避免破坏平分性)。如果它处理某些情况,而您只想添加更多情况而不显着更改现有代码,则添加新提交可能会更好。

如果您确实以任何方式修改了现有提交,请务必在提交消息中留下注释,说明您所做的更改。一种典型的风格是在方括号中留下注释,并与任何 Signed-off-by: 行分组(如果适用): [your.email@example.com:为清晰起见将新案例重构为函数] 例如:linux.git commit b44129b3。

通过https://www.quora.com/GitHub-Is-it-bad-etiquette-to-change-someones-pull-request-before-committing

【讨论】:

  • 你的答案应该是:只有你可以推送到 PR 的分支! :)
猜你喜欢
  • 2013-06-09
  • 1970-01-01
  • 2014-12-24
  • 2023-03-31
  • 2011-09-22
  • 2023-03-29
  • 1970-01-01
  • 2017-02-13
  • 2017-03-17
相关资源
最近更新 更多