LoginSignup
42
42

More than 5 years have passed since last update.

git-svnでsvnから緩やかにgitに移行しよう(基本手順編)

Posted at

まずはインストール

環境はOS:CentOS5.5。svnはすでにインストールされているものとします。

$vim /etc/yum.repos.d/rpmforge.repo
[rpmforge]
name = Red Hat Enterprise $releasever - RPMforge.net - dag
mirrorlist = http://apt.sw.be/redhat/el5/en/mirrors-rpmforge
enabled = 0
gpgcheck = 0

$yum install git git-svn --enablerepo=rpmforge
$git svn --version //確認

既存svnリポジトリをgit化する

$mkdir 作業ディレクトリ
$cd 作業ディレクトリ
$git init
$git svn clone -s --prefix svn/ [svnリポジトリ(trunkはつけない)] [clone後ディレクトリ名]
$cd cloneしたディレクトリ
$git svn show-ignore >> .git/info/exclude

*(余談)もしすでにaddしてるものがある場合や.gitignoreが効かないそんなときは..

$git add --cached file名

さらにcommitまでしてた場合

$git add --cached file名
$git commit -m "取り消し" file名

これでOK。

開発のフロー

$git checkout -b topic-branch名
$git add .
$git commit -m "コメント"

して開発する。

もしsvnのリモートリポジトリtrunkから更新内容を取り込みたいなら

 $git svn rebase

もしくは

$git svn fetch
$git checkout trunk //確認
$git checkout master
$git merge trunk

リモートリポジトリに変更を反映したい場合

$git checkout master
$git merge topic-branch名
$git svn dcommit

もしtopicブランチを削除したいなら

$git branch -d topic-branch名
42
42
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
42
42