git-svnをするときに同じリポジトリで異なるユーザで認証したい

諸事情あってgit-svnするユーザを切り替えたい時がある

  • --usernameで指定してもusername@repo形式で指定してもユーザが切り替わらなかった

キャッシュされた認証を削除

  • ~/.subversion/auth/の下に認証情報がキャッシュされている
  • 今回はとりあえず以下のようなファイルがあったので削除した(実際は*がハッシュ値になっている)
$ rm ~/.subversion/auth/svn.simple/********************************
  • これで、git svn cloneしなおせばよい

ユーザを指定する

  • この状態で、--usernameを指定するかusername@repo形式で指定する
$ git svn clone --username=foo -s http://svn.example.com/svn/hogehoge hogehoge
or
$ git svn clone -s http://foo@svn.example.com/svn/hogehoge hogehoge