巡り巡って自分の目の前にある subversion 管理されたプロジェクトの一部を git 変換して github に引っ越す方法をメモ。


  1.  履歴を subversion から git に変換
  2. 属性を subversion から git に変換
  3. github に push

履歴を subversion から git に変換

$ git svn clone http://hostname/svn/path/ato/sub/subdirectory subdirectory
$ cd subdirectory

branch/tag も引っ越すには、パスの切り方が subversion の推奨通りであれば --stdlayout をつけるだけでOK。
推奨から外れる場合、明示的に --trunk, --branches, --tagsで指定する。
see :

git svn clonegit svn init & git svn fetch のショートカット

属性を subversion から git に変換

subversion でディレクトリに対してプロパティとして設定されている属性情報のうち、除外設定(svn:ignore)を .gitignore 形式に変換する。

$ git svn create-ignore
$ git status .
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#       new file:   .gitignore
#       new file:   path/to/.gitignore

これらを add & commit

subversion の除外設定は $ git svn show-ignore とすると確認できる。

github に push

事前に github で push 先レポジトリを用意。
以下はユーザー account-name の下に repository-name というレポジトリを用意したことを前提とする。

$ git branch -a
* master
$ git remote add origin
$ git branch -a
* master
$ git push origin master
   e514e49..040c52c  master -> master


Tagged with: , , ,
Posted in project

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


Error: Twitter did not respond. Please wait a few minutes and refresh this page.

%d bloggers like this: