如何在SVN后彻底清理
我使用svn2git
将回购从SVN迁移到Git,除了一件事之外,我对所有事情都感到满意。 我如何删除显示在git branch -a
中的remotes/svn/trunk
分支:
$ git branch -a
* master
remotes/origin/master
remotes/svn/trunk
通过执行以下svn2git
,我在svn2git
之后清理完毕:
git config --remove-section svn-remote.svn
git config --remove-section svn
rm -rf .git/svn
但我仍然有remotes/svn/trunk
坐在那里! 我得到这个,如果我grep svn
的.git
目录:
$ grep -R svn .git
.git/info/refs:e6dd7a08d86d9b0944891755602b25ce12d30bb0 refs/remotes/svn/trunk
Binary file .git/objects/pack/pack-10cdd522d8f0fcc9b30efeddbdad3d0281c1e6da.pack matches
.git/packed-refs:e6dd7a08d86d9b0944891755602b25ce12d30bb0 refs/remotes/svn/trunk
我是否可以安全地进入这些文件并删除参考文献,或者是否有一种更干净的方法来摆脱那些旧的文件?
删除远程追踪分支将是一个好的开始:
git branch -d -r svn/trunk
其他建议可以在“如何停止在git中跟踪远程分支?”。
但要真正清理,可能需要执行其他操作(例如基于git gc
),如“如何从git repo中删除未引用的Blob”中所述。