例如,this commit声称由 mattcaswell 创作并由 richsalz提交
可能导致这种情况的使用流程是什么?假设我想要一个由其他人撰写并由我承诺出现在我是贡献者的回购中的提交 - 我将如何拥有它?
答案 0 :(得分:24)
Git区分作者和提交者(见Difference between author and committer in Git?)。作者是编写特定代码段的人 - 提交者是将这些更改纳入git" history"。
的人。通常两者都是相同的(并且在合并,克隆,推动或拉动时不会改变。)
导致两个人指向不同的人可以在rebasing上进行,编辑提交(例如amending),代表其他人进行提交(例如通过指定--author) ,应用补丁(git am),挤压(例如,在merge或rebase上)或cherry-picking。
答案 1 :(得分:1)
自2019年3月起(OP提出问题的5年后),存在另一种情况,即一个人编写的提交由另一个人提交,尤其是在问题中使用organization github.com/openssl
的情况下。
代表组织创建提交
开发人员可以代表组织表明他们为项目做出贡献的意图。
例如,当代表您的雇主参与第三方项目时,这可以最大程度地减少对所有权的混淆。将给定的提交与组织相关联:
- 提交者必须将
On-behalf-of
提交尾部添加到提交中,格式为:代表:@ORG <ORG CONTACT EMAIL>
,- 提交者必须是组织的成员,
- 必须使用组织已验证域中的电子邮件来提交提交,并且
- 必须对提交进行签名。
对
On-behalf-of
提交预告片的支持目前处于公开测试阶段。
有关更多信息,请参见creating a commit on behalf of an organization。