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

phpenvで入れたphpの起動スクリプトに関して

以前、CentOS7.7にphp5.3を入れるという案件がありましたが、yumなどでは入らないため、phpenvで入れました。 phpenv5.3+php-fpm が、起動スクリプトを配置していないこ …

no image

CodeDeployに関して

近年のプロジェクトではアプリのデプロイに関して、サーバーに入ってgitコマンドを打つようなケースは減ってきており、何らかのデプロイツールを使ってやることが一般的。 Contents1 CIツールを使っ …

no image

jenkinsでのSSH鍵認証&herokuからのソース取得

jenkinsでGitからソースを取得するときに鍵認証をかけている場合はそれ用の設定が必要になります。 基本的な考え方ですが、userがjenkinsだったときに、ssh鍵認証やherokuでどのよう …

no image

scpコマンドを使ったサーバー間のファイルのやり取り

あるサーバーのファイルを別サーバーにコピーするとき、大昔はFTPを使っていましたが、現在FTPサーバー自体を立てることがあまりないため、SSHを使ったSCPコマンドでのファイル点を使いました。 Con …

no image

AWSの監視システムについて

AWSでシステム内の監視を行うサービスについて少し触ったのでまとめておこうと思います。 Contents1 監視系のサービス1.1 CloudTrail1.2 GuardDuty1.3 AWSConf …

アーカイブ