是什么原因导致GitHub将提交显示为由一个用户*与*另一个用户

时间:2016-05-29 17:00:03

标签: git github

例如,请查看this commit

enter image description here

注意这里显示了两个用户,包括@unional和@blakeembrey。

是什么导致这种情况?

编辑进一步的研究:

$ git clone git@github.com:typings/typings.git
$ cd typings
$ git show abea10b5787e1a18634d5f37bb2fa56550c32fd1
commit abea10b5787e1a18634d5f37bb2fa56550c32fd1
Author: Homa Wong <homawong@gmail.com>
Date:   Thu May 26 09:47:58 2016 -0700

    Update `bundle` help (#557)

diff --git a/src/bin-bundle.ts b/src/bin-bundle.ts
index 8e6dd26..2af3599 100644
--- a/src/bin-bundle.ts
+++ b/src/bin-bundle.ts
@@ -5,11 +5,10 @@ import { bundle } from 'typings-core'

 export function help () {
   return `
-typings bundle --out <directory>
+typings bundle --out <filepath>

 Options:
-  [--out|-o] <directory> The bundled output directory
-  [--name] <name>        Bundle module name
+  [--out|-o] <filepath>  The bundled output file path
   [--global|-G]          Bundle as an global definition
 `
 }

有趣的是,提交中只提到了一个用户(unional)。这是一些存储在GitHub中的额外元数据吗?

编辑2 实际上git show似乎没有提供完整的补丁元数据。使用gitk我会看到这一点:

Author: Homa Wong <homawong@gmail.com>  2016-05-26 17:47:58
Committer: Blake Embrey <hello@blakeembrey.com>  2016-05-26 17:47:58
Parent: b79fd3f0f9af245a790717dcb5493fb49db2788d (Update README.md to add example of dt install (#547))
Branches: master, remotes/origin/master
Follows: v1.0.4
Precedes: 

    Update `bundle` help (#557)

这里我们看到一个不同的作者和提交者。这似乎是一个公关,而不是合并。

1 个答案:

答案 0 :(得分:1)

merge squash commit。当通过将所有提交组合成一个大提交来合并拉取请求/分支时,那些:

  • 创建了拉取请求
  • 致力于将合并的分支
  • 合并拉取请求

将在创建的提交中显示为提交者。显然,创建拉取请求的人在提交中获得了他/她的身份,而那些使个人提交并压缩它们的人将被存储为元数据。

在这种情况下:

  • unional是创建了pull请求并进行了唯一提交的人
  • blakeembrey是合并拉请求的人