【问题标题】:Github commit log have a authored name and a committed name via Xcode 7Github 提交日志具有作者名称和通过 Xcode 7 提交的名称
【发布时间】:2015-09-18 06:40:22
【问题描述】:

仅在 Xcode7 上。

如果我通过终端提交,一切都会顺利。

~/.gitconfig 文件从来没有变过,自从我更新到Xcode7,问题就开始了。

这两个名字都是我的名字,authored name 是我在.gitconfig 设置中的名字,committed name 是我电脑的名字。如果我通过终端提交更改,提交的名称将不会出现。它刚刚出现在 Xcode 7 上

太疯狂了???我刚刚改了电脑账号名,通过Xcode7再次commit,commit name变成同名但没有消失

【问题讨论】:

  • 最后我已经擦除了我的磁盘并重建了系统,现在它可以工作了。

标签: git github xcode7


【解决方案1】:

升级到 Xcode 7 后我遇到了完全相同的问题。我将我的 user.name 和 user.email 设置在全局级别,这对于 Xcode 6 工作正常。升级后我必须在存储库级别设置这些值(即使我对所有存储库都使用相同的用户名和电子邮件)。

git config --local user.name "username"
git config --local user.email "my@email.com"

【讨论】:

  • 在我擦除磁盘并重建系统之前,我已经尝试过,但仍然无法正常工作。现在我已经重建了我的系统,看起来很顺利。
【解决方案2】:

提交总是有一个提交者和一个作者,每个都存储一个名称和一个时间。在大多数情况下,它们是相同的,因为您同时创建了提交并提交了它。

但它们可能会有所不同,这有多种原因:

  • 修正:这可能是导致作者和提交者信息不同的最常见原因。当您使用git commit --amend 修改提交时,您可以在提交后修复它。作者数据保留,但提交者数据已刷新。
  • 变基:当您变基提交时,作者信息保持不变,但提交者信息会更新。因此,当您重新设置自己的提交时,它将获得一个新的提交时间。当您对其他人的提交进行 rebase 时,它​​将获得一个新的提交名称和时间(但作者保持不变以显示它的来源)。
  • 应用补丁:这仍然是一个非常常见的场景。例如,有人通过电子邮件提交补丁。该补丁包括所有提交信息,包括作者和提交者信息。但是,当您应用补丁时,您将使用自己的数据覆盖提交者信息,因为您刚刚创建了提交。
  • 有意设置信息:虽然在性质上相当奇特,但在实际创建提交之前,可能会影响将哪些作者和提交者信息写入提交。因此,确实有人可以使用任何信息创建提交,例如追溯提交的日期,或将其归因于其他人。

在您的情况下,由于您有不同的作者,很可能其他人重新确定了您的提交。这通常通过 GitHub 上的拉取请求来完成,以避免合并。

【讨论】:

  • 谢谢你告诉我这么多:),但是这两个名字都是我的名字,authored name 是我的 .gitconfig name,committed name 是我电脑的用户名。如果我通过终端提交更改,它将不会出现。它刚刚出现在 Xcode 7 上
  • 您的计算机名?这太奇怪了。
  • 可能是this question helps中的信息
  • 疯了?我刚刚改了电脑账号名,又通过Xcode7再次提交,提交名变成同名但没有消失……还是谢谢你
【解决方案3】:

对于 global git init 或 setup:

git config --global user.name "username"
git config --global user.email "youremail@gmail.com"

对于 本地 存储库 git init 或设置:

git config --local user.name "username"
git config --local user.email "youremail@gmail.com"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-31
    • 2012-10-02
    • 2014-10-31
    • 1970-01-01
    • 1970-01-01
    • 2011-06-30
    • 2013-07-25
    • 2013-09-17
    相关资源
    最近更新 更多