質問: 【前提】 ---- 開発環境が複数拠点に分かれている状態になります。 それぞれの環境ではインターネットは繋がる状態ではありますが、 セキュアなネットワーク(VPN等)で接続出来ているわけではありません。 【目標とする構築内容】 ----------- 各拠点ではインターネットが利用できるため、 例えば、GitHUB等でプロジェクトを作成する想定です。 ※現時点では、自前で構築するためGitLabを予定しています。 この環境はマスターリポジトリとして構築しますので、 指定したライブラリアン以外は操作出来ないものとします。 マスターリポジトリ内に、各拠点用にブランチを作成します。 各拠点側では、作成してもらったブランチを元に リポジトリを作成します。 各拠点内で開発用ブランチを作成し、改修・コミットを行います。 そして、拠点内に構築したリポジトリのマスターにマージを行います。 拠点毎に最新化されたマスターを、 インターネット上にあるマスターリポジトリに対してマージを依頼します。 この時点で、 インターネット上のマスターリポジトリにある各拠点のブランチ=各拠点のリポジトリ を想定しています。 最後にライブラリアンが各拠点用のブランチを元に マスターへマージを実施します。 --- 以下の図が、構築したいイメージ図になります。 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/997cc59cd64379c13bd47721ee5e6ea4.png) 【確認事項】 ------ Q1.とあるリポジトリに作成されたブランチをマスターリポジトリとして、新規のGitリポジトリが構築可能かどうか(上図の1~2が該当) ※マスターリポジトリのブランチが最新化された場合は各拠点のリポジトリを最新取得(PULL)したい。 Q2.リポジトリにあるマスターを別リポジトリのブランチにマージ依頼が可能かどうか(上図の6が該当)
回答: こんにちは。 不慣れながらgitを一応使っていますので分かる範囲で回答します。 > > Q1.とあるリポジトリに作成されたブランチをマスターリポジトリとして、新規のGitリポジトリが構築可能かどうか(上図の1~2が該当) > > > 外部のgithubプロジェクトをbranchごとcloneする方法に記載されている「3.branchを指定してclone」の手順でできるように思います。 > > Q2.リポジトリにあるマスターを別リポジトリのブランチにマージ依頼が可能かどうか(上図の6が該当) > > > たぶん、pullリクエストでできると思います。 GitHub初心者はForkしない方のPull Requestから入門しようの「もう1つのPull Requestについて」が正にそのような運用に近いのではないかと思います。 リモートの自開発拠点のブランチへプッシュし、ライブラリアンへマージ依頼する。 プル・リクエスト自体はGitHubの機能ですが、メール等でプル・リクエスト(この場合はマージ・リクエスト?)しても良いと思います。