数週間前に Subversion リポジトリを Git に変換しました。不要になったブランチがたくさん残っていますが、削除できません。さらに悪いことに、svn などのブランチを取り除こうとしている最中に、"origin" が重複しているブランチを見つけました。これが私のブランチリストの一部です:
% git branch -a | egrep 'svn/partial|master'
* master
origin/master
origin/origin/master
svn/partial
remotes/origin/master
remotes/origin/origin/master
remotes/svn/partial
svn/partial ブランチは削除できるようですが、remotes/svn/partial ブランチは削除できません。
% git branch -D svn/partial
Deleted branch svn/partial (was 373a64c).
% git branch -D remotes/svn/partial
error: branch 'remotes/svn/partial' not found.
git-fetch すると、svn/partial が再作成され、"origin/" ブランチの別のレイヤーが取得されます。
% git push
Everything up-to-date
% git fetch
From .
...
* [new branch] origin/origin/origin/master -> origin/origin/origin/master
...
* [new branch] svn/partial -> svn/partial
うわぁ!彼らはトリブルのように増殖しています:
% git br -a | egrep 'svn/partial|master'
* master
origin/master
origin/origin/master
origin/origin/origin/master
svn/partial
remotes/origin/master
remotes/origin/origin/master
remotes/origin/origin/origin/master
remotes/svn/partial
これを修正するにはどうすればよいですか?