ワガママ(やりたいこと)
- Gitの共有リポジトリが欲しい
- 複数人で使いたい
- でも開発担当以外の人に安易にソース公開させたくない
- かといってGitHubのプライベートリポジトリ使うのはお金かかるし
- 自分でサーバー立ててGitインストールは面倒
- プルリクエスト機能が欲しい
- などなど...
そんなワガママを叶えてくれる
GitLabって予め用意した自分のサーバーにインストールして使うものだとばかり思ってましたが、
Webホスティングサービスも展開してたんですね。知らなかった。。
他のサービスも一応比較してみましたが1、知名度やorganizationの多さ的にもGitLabが一番信頼できるかなと。
プライベートリポジトリをユーザー数無制限でいくらでも作成できるのは太っ腹ですね。
GitLabで共有リポジトリ作るまで
■1. サインイン
https://gitlab.com/users/sign_in
開発メンバーは別途GoogleAppsでアカウント管理しているので
「Sign in with」で"g"マーク選択し、GoogleAppsアカウントで認証。
■2. グループ・プロジェクト作成
- 複数人で開発するので、まずはNew Groupでグループ作成
- 作成されたGroupの画面でNew Projectでグループに属するプロジェクトを作成
■3. SSH鍵設定
- ■2でプロジェクト作成したら、プロジェクトのTOP画面にこんなメッセージが出てきます。
You won't be able to pull or push project code via SSH until you add an SSH key to your profile
まずは、以下参考に、SSH公開鍵・秘密鍵作ってください。(Windows端末前提)
http://webkaru.net/linux/tera-term-ssh-login-public-key/ - 上記メッセージのadd an SSH keyを押してSSH鍵登録画面を開き、作成した公開鍵の内容をコピペして登録
- 秘密鍵のほうは、ローカル端末の「{ホームディレクトリ}/.ssh」に配置
■4. ローカル側でのGitコマンド操作
※Windows端末前提です。
Gitはローカル端末に予めインストールしてくださいね。
- ■2でプロジェクト作成したら、プロジェクトのTOP画面にCommand line instructionsてのが出る
URLのところ、HTTPSかSSHか選択できる箇所があるので「SSH」を選択 - Gitリポジトリのクローン作るディレクトリまでエクスプローラ移動し、右クリック→Git Bash
- 「Git global setup」「Create a new repository」のコマンドをGit Bash上で実施
Create a new repositoryのところは、cloneコマンドが確認できれば良いかと
README.mdはすでに作成されていれば、以降のコマンド実施する必要なし
これであとは、そのプロジェクトのGit運用方針に従い開発を進めていこう。
【注意】TortoiseGitを利用する場合
上記■3と■4の手順が若干変わります。。
■3で生成した秘密鍵をPutty Private Key File形式にしないといけない。
■4のcloneコマンドは、TortoiseGitから行ったほうが良いかも。
- WindowsのアプリからTortoiseGit→PuttyGenを選択
- File→Load Private Keyで秘密鍵選択
- Save Private KeyでPutty Private Key File形式で保存
- clone先のディレクトリをローカル側で任意で用意し、そこまでエクスプローラで移動
- 右クリック→TortoiseGit(Git Clone)で、SSHパスとPutty Private Key File形式で保存した秘密鍵選択
- clone結果がSuccessとなればOK
オーナーとしての後処理
ここまで確認できれば、あとは開発メンバーに上記手順の■1と■3を見てもらってGitLabアカウントとSSH鍵を作ってもらう。
上記できたら、こちらからグループプロジェクトに対してユーザ追加をする。
で、開発メンバーには残りの■4.ローカル側操作をしてもらう。
とりあえず、コストかけずに複数人でGit使う際の参考にしていただければ幸いです。