如何删除 git svn 树中的重复提交?

How to remove duplicated commits in a git svn tree?

我正在使用 git SVN 使用 SVN 服务器。 我努力创建一个标签,所以我看了一下这棵树。 我注意到我的树搞砸了:所有提交都出现了两次。一次在红色“分支”中,一次在紫色上:

在发布这篇文章之前,我使用以下方法清理了很多分支:

git branch -D useless_remote_branch
git gc

但是对于这个,我不知道如何才能获得干净的历史记录。

如何回到只有红色“分支”的线性历史?

如果需要我可以删除SVN端的标签。

谢谢!


编辑

这是我在@VonC 和 git svn tag 命令建议的解决方案之后得到的结果:

如果您确定 have properly deleted the purple branch(在 git 和 svn 上),请确保也删除标签(在 git 和 svn 上)

svn rm $URL/tags/the_tag
git branch -D -r tags/the_tag
rm -rf .git/svn/tags/the_tag

这样,来自紫色分支的 none 提交将不会被来自红色分支的任何提交引用。