svn のレポジトリを既存の github レポジトリに取り込む手順をメモ。 多分、既存の git に取り込むのにも使えるはず。
ちなみに取り込むとログに git-svn-id: 〜 の用な感じで SVN のリポジトリパスが残るのでパスを秘密にしたい場合は諦めてファイルコピーで取り込んだ方がいいと思います。
- 2016-02-14 git-svn-id を付与せずに clone する方法を追記
前提条件
git cloneしたディレクトリは~/hoge/git checkoutしたブランチはimport_from_svn_example_net- 取り込みたい SVN レポジトリは
http://svn.example.net/path/to/svn/repos/ - 作業用の git レポジトリは
tmp
準備
- github.com からレポジトリを
git cloneする - ブランチを作り
git checkoutする 重要
ブランチは、
$ git checkout -b import_from_svn_example_net
みたいな感じで作る
手順
$ cd ~
$ git svn clone http://svn.example.net/path/to/svn/repos/ tmp
$ cd ~/hoge/
$ git pull ~/tmp
$ cd ~
$ rm -rf tmp
でターミナルでの作業は終了。 あとは githubクライアントで sync するなどして github に push すれば終了です。
git-svn-id を削除したい場合
git-svn-id を削除したい場合は
$ git svn clone http://svn.example.net/path/to/svn/repos/ --no-metadata tmp
とすると良いようです。
@sharkpp ところでsvnのリポジトリをもう使わわずgit-svn-idがいらないのでしたら、git svn clone --no-metadataが使えるはずです。 http://t.co/FRKHmnEj6zhttp://t.co/ZWGezekJls
— zakki (@k_matsuzaki) 2014, 11月 13