如何在使用git filter-branch时移动标签?

时间:2015-01-05 22:52:36

标签: git

使用git-filter-branch - --all更改提交者电子邮件后,我最终得到了几乎完美的树,但标签仍然附着在旧树上(使用旧电子邮件)。我如何移动标签,以便我有完整的树,新电子邮件和所有标签?

1 个答案:

答案 0 :(得分:1)

您需要使用--tag-name-filter cat来移动代码。不幸的是,您需要在原始filter-branch命令的同时执行此操作,因为从旧SHA-1到新/不同SHA-1的映射仅在过滤操作期间保留。

(如果您正在处理原始回购的副本,您当然可以轻松地重复filter-branch:只需制作新副本。或者,您可以使用refs/originals/名称恢复一切的空间,但这有点棘手。)