编辑 问题归结为“git rebase
是否可以指示重建标签?”但回答原始问题也会有所帮助。
在询问如何将过去添加到git存储库中?后,我按照这些指示进行了操作。<编辑> 然后我执行了重新基础操作以包括仅在快照中的文件,请参见此处。</编辑> 因为历史记录被重写(由git filter-branch
或git rebase
或两者都有?),所有标记仍然在原始时间轴上*,而我希望将它们移动到新的时间轴上。我认为我使用标记制作了所有提交消息,因此我可以尝试编写一个使用它们的脚本,但是一个更通用的git move-tags <from> <to>
命令会更好。
那么,有没有一种方法来解决“在新时间轴上距离第N个提交的提交是已标记的,以便在旧时间轴上的第N个提交也被标记”这个问题?除了显而易见的手动重新打标签外,任何其他解决方案都非常好。
(请随意将那个可怕的长句子改为简单的英语...)
*)嘿,git解决了祖父悖论!
--tag-name-filter
,filter-branch可以重写标签,但如果涉及到后续的rebase,则无济于事。 - Chris Johnsengit rebase
。后者之后标签没问题,我应该记得重新基于一个分离的分支,保留原始标签。所以基本问题是“能否指示git rebase
也重新基于标签?” - Tobias Kienzler