Suvbersion / Git / Mercurial のリポジトリを tracpath にインポートする機能がリリースされております。外部リポジトリをサイクロンに移行(Git / Subversion / Mercurial) をご確認ください。
以下のエントリーは古い情報となります。


Subversion のリポジトリを履歴保持したまま ciklone に移行する方法の Git 編です。
Git/Mercurialのリポジトリ移行はユーザの操作で可能です。

GIt の移行

はじめに

Gitは分散バージョン管理システムのためリポジトリが変更履歴を保持しています。Gitリポジトリを別サーバから移行する方法を説明します。

注意すべき点は、サイクロンのGitはチケット管理システムのコミットフック(commit-fook)が設定されているため事前にコミットフックの設定を変更する必要があります。

コミットフックを変更しない場合、インポートに時間がかかる場合があります。

手順

  1. サイクロンで新規リポジトリを作成
  2. サイクロンのコミットフック設定を無効にする
  3. Gitコマンド
  4. 移行されたデータの確認
  5. サイクロンのコミットフック設定を有効にする

1. サイクロンのプロジェクトにリポジトリを新規作成

サイクロンのプロジェクトに新規Gitリポジトリを作成します。

  1. リポジトリの追加をクリック
  2. リポジトリ名を「projectA」入力
  3. 「作成」をクリック

2. サイクロンのコミットフック設定を変更

サイクロンにログインし、管理画面のサイドナビゲーション[trac.ini] -> ticketをクリックします。
チケットの動作設定に関する設定画面が表示されます。

  • 項目名:commit_ticket_update_ignore_repositories
  • 変更時にチケットを更新させないリポジトリの名前を設定します。

テキストボックスに1)で新規作成したGitリポジトリ名を入力します。
複数入力する場合は「,(カンマ)」で区切ってください。

3. Git コマンドで移行

新規作成したサイクロン上のGitリポジトリにローカルにあるGitリポジトリを移行します。
サンプルとして Ruby の Git ライブラリである Grit をクローンして自分のサイクロンリポジトリに移行します。

リポジトリを取得します。

> git clone git://github.com/schacon/grit.git mygrit

Cloning into 'mygrit'...
remote: Counting objects: 4051, done.
remote: Compressing objects: 100% (2261/2261), done.
remote: Total 4051 (delta 1810), reused 3911 (delta 1733)
Receiving objects: 100% (4051/4051), 1.84 MiB | 636 KiB/s, done.
Resolving deltas: 100% (1810/1810), done.

取得したリポジトリのクローン元情報を削除します。

> git remote
> git remote rm origin
> cd mygrit   ... ここは利用環境によって異なります。

サイクロンにリポジトリを移行します。

> git push --all origin

Username for 'https://.ciklone.com': user-name
Password for 'https://@.ciklone.com':
Counting objects: 4021, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2179/2179), done.
Writing objects: 100% (4021/4021), 1.84 MiB | 3.11 MiB/s, done.
Total 4021 (delta 1793), reused 4011 (delta 1786)
To https://.ciklone.com/git/

他サイト(サーバ)のリポジトリをサイクロンに移行することができました。

4. リポジトリの確認

ブラウザでサイクロンにアクセスし、リポジトリを確認します。

5. コミットフックの設定を戻す

1) コミットフックの設定を無効から有効にします。

コミットフックの除外リポジトリとして登録したリポジトリ名を削除して、「変更を適用」をクリックします。

以上で他サイト・他サーバで管理している Git リポジトリを簡単にサイクロンに移行することができます。

ぜひ、お試しください。


One thought on “Git のリポジトリを履歴保持したまま ciklone に移行する方法

  1. Pingback: Subversionのリポジトリを履歴保持したままcikloneに移行する方法 « ciklone.com

Leave a reply

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> 

required