Contents
Backlogでのプロジェクトと Git リポジトリ作成
Backlog の UI だけでプロジェクトとその中の Git リポジトリを同時に用意できます。
この手順を正しく踏めば、後続の設定(アクセス権や CI/CD の連携)へスムーズに移行できるため、チーム全体の作業開始が早まります。
手順概要
以下は公式チュートリアル(リモートリポジトリを Backlog 上に作成する)に沿った、最小限の操作手順です。
- プロジェクト作成
- 左側メニューの「プロジェクト」→「新規作成」をクリックし、名前・キー・管理者を入力して「作成」します。
- Git リポジトリ作成
- 作成したプロジェクト画面左の「Git」ボタンを選択し、「リポジトリ作成」からリポジトリ名、概要、可視性(プライベート/パブリック)を設定して保存します。
ポイント
- リポジトリ名はプロジェクトキーと合わせると検索がしやすくなります。
- 機密情報が含まれる場合は必ず「プライベート」を選択してください。
Git リポジトリの設定とアクセス管理
Backlog のヘルプセンターに記載されている通り、リポジトリの追加・編集・削除やメンバー招待はすべて UI で完結します。
適切な権限付与を行うことで、チーム全員が安全かつ効率的にコード操作できる環境が整います。
リポジトリの追加・編集・削除
| 操作 | 手順 |
|---|---|
| 追加 | プロジェクト画面左メニュー → 「Git」→「リポジトリ一覧」→ 右上の「リポジトリ作成」ボタンをクリックし、名前と可視性を入力して保存。 |
| 編集 | 対象リポジトリ横の「設定」アイコン → 「名称・概要変更」から必要項目を修正。 |
| 削除 | 同じメニュー内の「削除」ボタンを選択し、確認ダイアログで「はい」をクリック。 |
メンバー招待と権限設定
- プロジェクト画面右上の「プロジェクト設定」→「メンバー管理」へ遷移します。
- 「メンバーを追加」からユーザーを検索し、閲覧者 / 開発者 / 管理者 のいずれかを選択して招待します。
権限の目安
- 開発者 :git push/git pullが可能な最小権限。
- 管理者 : リポジトリ設定やメンバー権限変更が行える上位権限。
SSH 鍵と HTTPS 認証の選択・設定
Git の接続方式は大きく分けて SSH 鍵 と HTTPS 認証 があり、どちらを採用するかはセキュリティ要件と運用方針で決めます。
本節では両者の特徴を比較し、実務で推奨される設定手順を示します。
推奨接続方式
結論:SSH 鍵は一度登録すればパスフレーズ入力だけで済み、CI/CD パイプラインでも安全に利用できるため、特に自動化が必要なプロジェクトでは推奨します。
根拠:SSH は接続時の暗号化ハンドシェイクが一度だけ行われ、その後は鍵交換で認証が完了するため、環境によっては HTTPS(毎回ユーザー名・パスワードまたはトークンを送信)より若干高速になることがあります。ただし差は数十ミリ秒程度と小さいため、主な判断基準は「自動化の容易さ」と「鍵管理の徹底」にすべきです。
SSH 鍵生成・登録手順
- ローカル端末で次のコマンドを実行し、2048 ビット以上(推奨は 4096 ビット)の RSA キーを作成します。
bash
ssh-keygen -t rsa -b 4096 -C "your_email@example.com" ~/.ssh/id_rsa.pubの内容をコピーし、Backlog の 個人設定 → SSH 鍵 で「鍵を追加」ボタンを押して貼り付けます。- キーに分かりやすい名前(例:
work-laptop)を付けて保存します。
HTTPS 認証との比較表
| 項目 | SSH | HTTPS |
|---|---|---|
| 初期設定手間 | 鍵生成+登録が必要 | ユーザー名・パスワード(またはトークン)入力だけ |
| CI/CD での自動化 | 秘密鍵を安全に保管すれば容易 | トークン管理と定期更新が必須 |
| パフォーマンス | 環境依存だが若干高速になることがある | TLS による暗号化オーバーヘッドは僅か |
| セキュリティ | 鍵漏洩以外はパスフレーズで二段階防御 | パスワードやトークンが平文に近い形で扱われるリスク(TLS で保護されるが) |
ローカル操作と課題連携(コミットメッセージ活用)
Backlog のリポジトリ URL を取得すれば、ローカルでの clone・push・pull が可能です。さらに 課題番号をコミットメッセージに含める だけで、コードと課題が自動的に紐付けられます。
正しいリポジトリ URL の取得例
- HTTPS
https://your-space.backlog.com/git/{projectKey}/{repoName}.git - SSH(公式フォーマット)
git@your-space.backlog.com:{projectKey}/{repoName}.git
※
{projectKey}はプロジェクト作成時に指定したキー、{repoName}はリポジトリ名です。
ローカルでの基本操作手順
- クローン
bash
# HTTPS の場合
git clone https://your-space.backlog.com/git/PROJ/frontend.git
# SSH の場合(公式フォーマット)
git clone git@your-space.backlog.com:PROJ/frontend.git
2. **変更のコミット**bash
git add .
git commit -m "Fix login bug #1234"
3. **プッシュ**bash
git push origin master
4. **プル(他メンバーの更新取得)**bash
git pull origin master
課題番号を含むコミットで自動紐付け
Backlog はコミットメッセージ中に #課題番号 が現れると、該当課題の「コメント」や「コミット」タブに自動的にリンクを作成します。
これにより、コードレビュー時にどの課題がどの変更に対応しているかが一目で分かり、進捗管理が格段に楽になります。
トラブルシューティングと CI/CD 連携
実務でよく遭遇するエラーは「認証失敗」や「リポジトリ未検出」などです。原因をすぐに特定できれば、開発の停滞を防げます。また、CI/CD ツールとの統合時には認証情報の取り扱いがポイントになります。
代表的エラーと対処法
| エラーコード | 主な原因 | 推奨対策 |
|---|---|---|
Authentication failed |
SSH 鍵未登録、HTTPS パスワード誤り | 鍵を再登録、またはトークンを更新(Backlog の「個人設定」) |
Repository not found |
URL のタイプミス、権限不足 | 正しい公式フォーマットの URL をコピーし、対象メンバーに 開発者 権限付与 |
Permission denied (publickey) |
ローカル鍵がサーバ側に未登録 | 新鍵を生成後、Backlog の「SSH 鍵」へ追加 |
Remote: fatal: Could not read from remote repository. |
社内プロキシやファイアウォールでブロック | プロキシ設定を確認し、必要なら SSH への切替え |
HTTPS 失敗時の SSH 切替え(実例)
Qiita の投稿「Backlog の Git を HTTPS から SSH に切り替える」では次の手順が紹介されています。
- 現在のリモート URL を確認
bash
git remote -v - SSH 鍵を生成・Backlog に登録(上記「SSH 鍵生成・登録手順」を参照)
- リモート URL を公式 SSH フォーマットに変更
bash
git remote set-url origin git@your-space.backlog.com:PROJ/frontend.git - 再度
git pushすると認証エラーが解消されます。
この作業は数分で完了し、CI サーバーでも同様に SSH 鍵を配置すれば自動化が可能です。
CI/CD ツールとの併用ポイント
| ツール | 設定上の留意点 | 推奨設定例 |
|---|---|---|
| GitHub Actions | Secrets に SSH 秘密鍵または API トークンを保存し、ssh-agent でロードする必要がある |
actions/setup-ssh@v2 を利用し、鍵の権限は最小の 開発者 に限定 |
| Jenkins | 「グローバル認証情報」に SSH 秘密鍵を登録し、ジョブごとに「Git」プラグインで参照させる | Credentials Binding Plugin で一時的に環境変数へ展開し、ビルド後は削除 |
| GitLab CI(Backlog リポジトリ利用) | .gitlab-ci.yml に SSH 鍵を Base64 エンコードして埋め込み、ジョブ開始時にデコードして ssh-add する |
before_script でキーを書き出し、after_script で安全に削除 |
ベストプラクティス
- 認証情報は必ず「最小権限」(開発者)で作成し、定期的にローテーションする。
- ビルド結果やデプロイ状況は Backlog の課題コメントやカスタムフィールドへ API 連携すると可視化が容易になる。
記事全体のまとめ
- プロジェクトとリポジトリ作成 は公式チュートリアル通りに UI 操作するだけで完了し、以降の設定はすべて同一画面から行えます。
- アクセス管理 では「開発者」権限を基本とし、必要に応じて閲覧者・管理者を付与すると安全です。
- SSH 鍵 は自動化やセキュリティの観点から推奨されますが、環境依存で速度差は僅かです。HTTPS でも運用は可能です。
- 課題番号付きコミット による自動リンク機能を活用すれば、コードと課題の紐付けが手作業不要になります。
- トラブルシューティング表 と CI/CD 各ツール向け設定例 を参照すれば、認証エラーやリポジトリ不一致に迅速に対処でき、継続的インテグレーションの障壁も低減できます。
これらの手順とベストプラクティスをチームで共有し、Backlog と Git の連携を業務フローに自然に組み込むことで、開発速度・品質ともに向上させましょう。