skillup

技術ブログ

Git サーバー・ネットワーク

追跡ブランチからローカルブランチを作る方法~ (svn→gitの移行など)

投稿日:2015年12月4日 更新日:

SVNで運用されていたプロジェクトをgitに移行する機会があったのでその時のメモなどを。

思ってたよりは楽だったかな・・・

準備

gitとsvnが入っていることは当然なんですが、git-svnというライブラリをインストールする必要があります。

といってもyumで終了です。

参考リンク

subversionリポジトリでもgitが使えるgit-svn

yumを使わない方法も一応あるようです。

参考リンク

git-svnインストールからgit svn dcommit完了までの手順

実際の移行(git svn clone)

移行したいディレクトリ直下で下記コマンドを実行すれば一気に取り込めます。

ブランチが複雑だったりするとダメらしいのですが、自分の場合はそれほど問題なくいけました。

終わった後git branch -a でみてあげればremotes/svn/~などとsvnの追跡ブランチが取り込まれているのがわかると思います。

gitのブランチの作成

これだけではgitで運用できるブランチがつくれていません。追跡ブランチからブランチを作る必要があります。

下記コマンドでブランチを作り、チェックアウトします。(/remotes/svn/hogehogeからhogehogeブランチを作るとします。)

ちなみに不要な追跡ブランチを消すのは下記コマンドです。

これでブランチが作成できたのでgitの運用ができます。

参考リンク

追跡ブランチ (tracking branch) というブランチが何なのか調べた

この状態だとまだユーザー情報を作っていないのでユーザー情報を作成してあげましょう。

この後、git add , git commit ,git pushなども正常に行えます。

移行全般に関するリンクは下記が参考になります。

参考リンク

git-svnでSVN→Gitへの移行をやってみたログ

-Git, サーバー・ネットワーク
-

執筆者:


  1. […] 追跡ブランチからローカルブランチを作る方法~ (svn→gitの移行など) […]

comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

ファイルを戻したい時のGitコマンド(主にgit resetの用法)

使用ケースでGitコマンドを復習してみようかなと思いました。 主にgit resetの用法整理ですが・・・ Contents1 ローカルを間違ってaddしてしまい、インデックスへの変更を取り除きたい2 …

no image

CentOS7でのIP固定

日ごろ業務ではwindowsにVitrtualBox+VagrantにCentOSをいれていたのですが、スペックにややネックがあったため、今は使っていないPCにCentOS7を入れて開発企図して使うこ …

no image

firewall復習 ansibleコマンドもかねて

CentOS7ではファイアーウォールの設定をfirewallというコマンドで行います。要はportのブロックですね。 以前下記リンクでもfirewallについて書いたんですが、あまり理解もできていなか …

no image

supervisorによるデーモン化

えー実務で任意のプログラムをデーモン化させて処理をするという実装があったのでメモ。 Contents1 デーモンとは?2 Supervisor2.1 インストール2.2 実行プログラム2.3 サービス …

no image

gitのfetch/merge/rebaseについて その2

以前、gitのfetch/mergeについての記事を書きましたが、理論的なことは書いてあっても実際に処理の流れをかいていなかったので、今回はそのことについてメモリます。 Contents1 競合が起き …