0

我的 git 存储库是从 svn 导入的。并且用户名git log类似于 0129。我想用我的设置覆盖它,比如 John 而不是 0129。我发现这个:

有没有办法在本地存储库配置中覆盖 git 作者的显示名称?

.mailmap 解决方案在 中运行良好git shortlog,但git log仍然提供相同的输出。有什么建议么?

编辑 我也检查了在 Git 中更改多个提交的作者和提交者姓名和电子邮件,但我不想git filter branch每次都在git svn rebase.

4

2 回答 2

2

您需要在从 svn 迁移到 git 时使用 git-svn 指定作者的映射:

  mkdir project_tmp
  cd project_tmp
  git-svn init https://company.project.org/project --no-metadata
  git config svn.authorsfile ~/Desktop/users.txt
  git-svn fetch

users.txt 文件是这样的:

  xavier.fuster = xavier.fuster <xavier.fuster@project.org>
  francesc.dalmau = francesc.dalmau <francesc.dalmau@project.org>

equal的第一部分是svn用户名,第二部分是git名。

在此之后,您需要进行正常克隆以留下所有 svn 内容:

 git clone project_tmp project
于 2013-01-28T08:39:55.673 回答
1

你看过什么--authors-file时候克隆/获取/变基/...?

提供作者文件,将允许您使用理智的名称。作者文件的语法类似于以下内容,每行有 1 个作者:

svn_user_name = JustNameInGit <obligatory@email.com>
于 2013-01-28T08:37:13.347 回答