こんにちは、中井です。以前、「Backlogの課題にGitHubのプッシュとプルリクを連携して便利にGit利用」という記事を書きました。GitHubも便利ですがBacklogを利用していてGitを使うのならば、やっぱりBacklogのGitを使うのがとってもお勧めです。
というのも、課題のコメントにコミットコメントを表示できたり、課題とプルリクを紐づけられたりととっても便利な機能があるからです。プロジェクトに「コミットと課題を連携する」という設定をするだけですぐに便利な機能が使えます。
そこで今回は、GitHubからBacklogのGitへリポジトリを移行する方法をご紹介します。
1. BacklogのGitにリポジトリを作成する
まずは、移行先のリポジトリをBacklogのGitに作成します。
移行したいプロジェクトでGit機能が有効になっていない場合は、スペース管理者やプロジェクト管理者の権限が付与されているユーザーでGit機能を有効にしてからリポジトリを作成します。
具体的な方法は、以下のヘルプページを参考にしてください。画像付きで詳しく説明されています。
Gitの設定・リポジトリ – Backlog ヘルプセンター
2. GitHubのリポジトリをミラーリングでクローンする
ここからの作業は、Gitのコマンドで進めていきます。
移行元となるGitHubのリポジトリをクローンします。
ここでのポイントは、ミラーリングのオプションを指定してクローンすることです。履歴情報やブランチなどGitの情報をローカルに持ってくることで、全ブランチやタグを移行先へ持っていくことができます。
# 移行元をミラーリングでクローンする
$ git clone --mirror {GitHubリポジトリURL}
「GitHubリポジトリURL」は、GitHubの画面にある[Code]ボタンから表示されるノートマークでコピーできます。認証方法によってURLは変わってきますので注意してください。
3. リポジトリのプッシュ先にBacklogのGitを設定する
ローカルにあるリポジトリのプッシュ先をBacklogのGitに設定します。
# 1. クローンしたディレクトリへ移動する
$ cd {リポジトリ名}.git/
# 2. プッシュ先に移行先のBacklogのGitを設定する
$ git remote set-url --push origin {BacklogリポジトリURL}
# 3. 確認する
$ git remote -v
origin {GitHubリポジトリURL} (fetch)
origin {BacklogリポジトリURL} (push)
「BacklogリポジトリURL」は、プロジェクトの[Git]で表示されるリポジトリ一覧のノートマークでコピーできます。
4. BacklogのGitへプッシュする
あとはBacklogのGitへプッシュすれば移行完了です。
# BacklogのGitへプッシュする
$ git push --mirror
完了したら早速、Backlogの画面で確認してみてください。 プロジェクトの[Git]で表示されるリポジトリ一覧から各リポジトリの画面を表示するとリポジトリの内容を確認できます。[コミット履歴]や[ブランチ]メニューもあるので、確認してください。
さいごに
今回紹介したのは、移行の基本的な流れになります。移行元Gitの状態や認証の設定などにより手順や具体的な値は変わることがあります。
ですが、BacklogのGitへ移行してより課題の状態を把握しやすくするというのは大きな利点です。ぜび挑戦してみてください!