【问题标题】:How to use git fast-import committer command?如何使用 git fast-import committer 命令?
【发布时间】:2015-07-08 05:14:50
【问题描述】:

我使用 git fast import 创建了一个 git 存储库。我想更新其中单个文件的提交者信息。如何更新单个文件的提交者信息?

【问题讨论】:

  • 您已经创建了您的存储库,所以我建议您按照this SO question 中的一些步骤进行操作,尤其是那些与git filter-branch 相关的步骤。请记住,因为提交者信息仅包含在提交中,并且每个提交都引用其父文件,因此重写单个文件实际上需要重写大部分提交历史。 (除非:您是否正在考虑从源代码库重新导入整个树,重新开始,但从一开始就使用精细的源信息?)
  • 实际上我正在尝试将元数据从 Serena Dimensions 版本控制系统导入到 Git。我通过在脚本中使用虚拟作者姓名尝试了 Git 快速导入。现在我想用实际的作者姓名更新提交历史。

标签: git git-fast-import


【解决方案1】:

请记住,git 中的每次更改都依赖于上一次提交,而上一次提交又取决于上一次提交,依此类推。在您的历史早期更改一位作者/提交者将导致从那时起的每个提交哈希都发生更改

如果对现有存储库进行作者/提交者更改,您可以使用git filter-brancha variety of other options 来调整有问题的提交以及之后的所有提交。您需要与使用存储库的其他人协调这样做,因为他们正在做的任何现有工作都需要调整为仅指向您的新(重写)提交,而不是重写之前的提交。

由于涉及的重写程度,并且因为您的存储库太新,我建议重新导入注意git fast-import commit documentation 上的“作者”和“提交者”行。

【讨论】:

    猜你喜欢
    • 2018-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-09
    • 2017-06-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多