如果我在存储库上创建一个拉取请求,如果管理员决定只包含一些提交,这仍然算作我的贡献吗?

If I create a pull request on a repository, if the admins decide to include only some of the commits, will that still count as a contribution for me?

我想在一个非常具体的文件中为 Rails 存储库做出贡献。该贡献应该在各种提交上分开。如果我创建拉取请求并说管理员决定只有一些提交可以合并,他们是否只能合并一些提交?那个贡献会计入我的个人资料,还是我应该将我的贡献分成几个拉取请求,让他们选择有价值的更改?

我听说他们可以挑选我的一些提交,但我不确定这是否会算作对我的个人资料的贡献。

感谢您的回答

看看这是否有帮助。

在 git 中有作者和提交者。作者是最初编写代码的人。另一方面,假定提交者是代表原作者提交代码的人。这在 Git 中很重要,因为 Git 允许您重写历史记录,或代表其他人应用补丁。

You may be wondering what the difference is between author and committer. The author is the person who originally wrote the work, whereas the committer is the person who last applied the work. So, if you send in a patch to a project and one of the core members applies the patch, both of you get credit — you as the author, and the core member as the committer.

来源 - Git SCM

GitHub 本身不提供仅合并拉取请求的一部分的方法。但是,维护者可以手动挑选一个或多个提交到他们的存储库中,在这种情况下,您将被列为作者,而他们将被列为提交者。

不过,通常情况下,如果有维护者不想要的更改,他们会要求您强制推送您的分支,只包含他们想要保留的更改。开源维护者通常很忙,手动挑选部分很麻烦,而且通常会导致他们不想手动解决的冲突。让您润色您的提交更容易,并给您带来创建高质量提交的负担。

如果您的拉取请求得到审核并需要进行一些更改,那也没关系。我定期为 Git 做出贡献,几乎没有人提交补丁并立即将其拾取而无需更改。我最近发送了一个系列的 5 个版本,才最终被接受。审查过程为所有相关人员提供了一个机会,让他们可以做出一系列他们感觉良好并引以为豪的变化。

GitHub 确实计算您作为作者的贡献,即使其他人是提交者。 Git 项目本身使用基于补丁的工作流程,其中维护者接受并应用来自贡献者的补丁,使贡献者成为作者,维护者成为提交者。这些贡献会反映在作者的 GitHub 个人资料中,就像任何其他贡献一样。请注意,只有最终在默认分支(通常 master)中的提交才被计算在内。

一般来说,如果您不确定项目的维护者在特定提交中寻找什么,您可以打开一个问题并讨论您的提案(除非贡献文档另有说明)。这通常对您和维护者都有帮助,因为您不会编写需要丢弃的代码,并且维护者可以更早地获得满足他们需求的高质量贡献。