Git & GitLab連携

 


📝 Git & GitLab連携

これまでは、あなたのパソコンの中だけでGitを使ってきました。しかし、Gitの真の力は「分散型」にあることです。つまり、インターネット上のサーバーと連携することで、世界中の開発者と協力して一つのプロジェクトを進めることができます。

ここでは、そのためのオンラインサービスである「GitLab」の使い方を学びましょう。


1. GitLabにプロジェクトを立ち上げる 🚀

まずは、あなたのローカルリポジトリを公開する場所をGitLabに作ります。

  1. GitLabに登録する: gitlab.comでアカウントを無料で作成します。

  2. 新しいプロジェクトを作成する:

    • 「New project」をクリック。

    • プロジェクト名を付けます(例:My cool website)。

    • 「Initialize repository with a README」のチェックを外す!(ローカルに既にファイルがあるため、競合を避けるためです)

    • 「Create project」をクリックしてプロジェクトを作成します。

これで、あなたのローカルリポジトリを置くための「空っぽの箱」がオンライン上にできました。


2. ローカルとオンラインを繋ぐ:SSHキー 🔑

GitLabと安全にやり取りするためには、「SSHキー」という暗号化された鍵を使います。これにより、毎回パスワードを入力せずに済みます。

【SSHキーの作成と登録】

  1. 鍵を生成する: ターミナルでssh-keygenと入力してEnterキーを押し、鍵を生成します。パスフレーズは今回は空のまま進めます。

  2. 公開鍵をコピーする: cat ~/.ssh/id_rsa.pubと入力して公開鍵の内容を表示し、すべてコピーします。

  3. GitLabに登録する:

    • GitLabの「Settings」→「SSH Keys」に移動。

    • コピーした公開鍵を貼り付け、「Add key」をクリックします。


3. ローカルの変更をオンラインに反映する:プッシュ ⬆️

いよいよ、あなたのパソコンにあるコードをGitLabにアップロードします。

  1. オンラインリポジトリを登録する:

    • 作成したGitLabプロジェクトのページにあるgit remote add origin ...というコマンドをコピーして、ローカルのターミナルで実行します。

    • これで、originという短い名前でGitLabのリポジトリを認識できるようになります。

  2. 変更をプッシュする:

    • git push origin masterコマンドで、ローカルのmaster(またはmain)ブランチの変更をオンラインに反映させます。

これで、GitLabのプロジェクトページにあなたのファイルが表示され、誰でも見れるようになります。


4. オンラインの変更をローカルに取り込む:プル ⬇️

GitLab上でも直接ファイルを編集できます。しかし、その変更はあなたのパソコンにはまだ反映されていません。

  • git pull origin master: オンラインのmasterブランチの最新の変更を、ローカルのmasterブランチに取り込みます。

  • git pull --rebase: もし、オンラインとローカルで同じファイルが変更されていた場合、マージコンフリクトを回避し、履歴をきれいに保ちながら変更を取り込むことができます。git pullを使う際は、この--rebaseオプションを毎回使うことを強くおすすめします。


5. チーム開発の王道:マージリクエスト 📬

GitLabでのチーム開発では、いきなりmasterブランチにプッシュするのではなく、「マージリクエスト(Merge Request)」を使うのが一般的です。

【マージリクエストの利点】

  • レビュー: チームメンバーにコードをレビューしてもらい、意見交換ができます。

  • 品質保証: 自動テスト(CI/CDパイプライン)が走り、コードに問題がないか確認できます。

【マージリクエストの進め方】

  1. ブランチを作成・プッシュする: 新しい機能やバグ修正用のブランチを作成し、そこにコミットした後にgit push origin <ブランチ名>でGitLabにプッシュします。

  2. マージリクエストを作成する: プッシュ後、GitLabの画面に表示される「Create merge request」ボタンをクリックします。

  3. レビュー・承認: チームメンバーが変更内容を確認し、問題なければ承認します。

  4. マージ: 承認後、「Merge」ボタンをクリックして、masterブランチに統合します。


6. リポジトリを丸ごとコピー:クローン 📥

もし、あなたが他の人のGitLabプロジェクトに参加する場合、そのリポジトリ全体を自分のパソコンにダウンロードする必要があります。

  • git clone <リポジトリのURL>: このコマンドで、リモートにあるすべてのファイルと変更履歴を、あなたのパソコンに丸ごとコピーできます。

【なぜクローン?】 自分のパソコンの故障や紛失に備え、オンライン上にバックアップを置いておくことができます。もしもの時も、クローンすればすぐに作業を再開できます。