我熟悉的所有版本控制系统的工作方式是每次提交都归属于单个开发人员。敏捷工程的兴起,特别是结对编程的兴起,导致了两个开发人员对同一任务做出重大贡献的情况,例如错误修复。
归因问题在工作环境中不会有太大的问题,因为项目经理会知道配对正在做的工作,但是如果两个开源贡献者决定配对并推出一些代码呢?到一个不知道他们正在一起工作的特定项目。像 Git 这样的版本控制系统有没有办法将特定的补丁分配给多个开发人员?
Commit title Commit body Co-authored-by: name <additional-dev-1@example.com> Co-authored-by: name <additional-dev-2@example.com>
这种方法的一个问题 是您无法为这组开发人员创建签名密钥,因此您基本上可以将任何人添加到此列表中,即使他们没有在某个功能上工作,而 GitHub 会像对待他们一样对待它。但是,在大多数情况下,这应该不是问题。
例如Co-authored-by: Linus Torvalds <torvalds@linux-foundation.org>
Co-authored-by: Linus Torvalds <torvalds@linux-foundation.org>
对于普通作者或签名组(旧方法),您会看到它没有签名并且知道您不能信任提交。但是,没有共同作者的签名过程。
大多数过时的答案:
一种解决方案是为该对设置名称:
git config user.name "Chris Wilson and John Smith"
这是与其他临时解决方案相关的错误报告:
Bug git-core:Git 应该支持多个作者提交