GitHub / GitLab を使おう
はじめに:クラウドにコードを保存しよう
ここまでで、Git を使って 自分のパソコンの中 でコードの変更を記録する方法を学びました。
でも、こんな心配はありませんか?
- 「パソコンが壊れたら全部なくなるのでは...?」
- 「チームメンバーとコードを共有したいけどどうすれば...?」
- 「家と会社で同じコードを使いたい...」
この問題を解決するのが GitHub(ギットハブ) と GitLab(ギットラボ) です。
一言でいうと
GitHub / GitLab は 「コードのクラウドストレージ」 です。Google Drive や iCloud のコード版だと思ってください。
GitHub と GitLab って何が違うの?
どちらも Git のリポジトリをインターネット上に保存・共有するサービス です。
| 項目 | GitHub | GitLab |
|---|---|---|
| 運営 | Microsoft | GitLab Inc. |
| 特徴 | 世界最大のコード共有サービス | 企業向けの機能が充実 |
| 利用者 | オープンソース・個人が多い | 企業での利用が多い |
| 料金 | 無料プランあり | 無料プランあり |
| 自社サーバー設置 | 有料のみ | 無料で可能 |
どちらを使えばいい?
- 個人学習や趣味 → GitHub がおすすめ(ユーザーが多く、情報も豊富)
- 会社での利用 → 会社の方針に従いましょう(GitLab を使う企業も多い)
- Claude Code との連携 → どちらでも問題なく使えます
アカウントを作ろう
GitHub のアカウント作成
- github.com にアクセス
- 「Sign up」をクリック
- メールアドレスを入力
- パスワードを設定
- ユーザー名を決める(これが公開プロフィールになります)
- メール認証を完了する
ユーザー名の選び方
ユーザー名は 後から変更しにくい ので、慎重に選びましょう。本名やハンドルネームが一般的です。英数字とハイフンが使えます。
GitLab のアカウント作成
- gitlab.com にアクセス
- 「Register now」をクリック
- 名前、ユーザー名、メールアドレス、パスワードを入力
- メール認証を完了する
ローカルとリモートの関係
Git では、2つの場所を区別します:
┌──────────────────────────┐ ┌──────────────────────────┐
│ │ │ │
│ あなたのパソコン │ ← 同期 → │ GitHub / GitLab │
│ (ローカルリポジトリ) │ │ (リモートリポジトリ) │
│ │ │ │
│ git add / commit で │ │ コードのバックアップ │
│ 変更を記録する │ │ チームで共有する場所 │
│ │ │ │
└──────────────────────────┘ └──────────────────────────┘
↑ git push で送る ↑
└──────────────────────────────→ │
↓ git pull で受け取る ↓
← ──────────────────────────────┘ポイント
- ローカル:自分のパソコンにあるリポジトリ(ここでコードを書く)
- リモート:GitHub / GitLab にあるリポジトリ(バックアップ・共有用)
- この2つを
git pushとgit pullで同期させます
git clone - リモートリポジトリをコピーする
git clone は、GitHub / GitLab にあるリポジトリを 自分のパソコンにコピー するコマンドです。
# GitHub のリポジトリをコピー
git clone https://github.com/ユーザー名/リポジトリ名.git実行すると、リポジトリ名のフォルダが作られ、中にすべてのファイルと履歴がダウンロードされます。
# 例:Claude Code のリポジトリをコピー
git clone https://github.com/anthropics/claude-code.git
# コピーされたフォルダに入る
cd claude-code
# ファイルが入っていることを確認
lsgit init との違い
git init→ 新しい空のリポジトリを ゼロから作るgit clone→ 既存のリポジトリを コピーして持ってくる
すでにあるプロジェクトに参加するときは git clone を使います。
git push - 変更をアップロードする
git push は、ローカルのコミットを リモートリポジトリに送る コマンドです。
Google Drive にファイルをアップロードするのと同じイメージです。
# ローカルの変更をリモートに送る
git push origin main git push
ローカル ─────────→ リモート(GitHub / GitLab)
(自分のPC) (クラウド)
「手元で保存した変更を、クラウドにアップロード」初回の push
新しいリポジトリで初めて push するときは、リモートリポジトリの設定が必要です。
# GitHub にリポジトリを作った後、ローカルと紐づける
git remote add origin https://github.com/ユーザー名/リポジトリ名.git
# 初回の push(-u は「この設定を覚えておいて」という意味)
git push -u origin main
# 2回目以降は省略形でOK
git pushpush する前に必ず commit
git push は コミット済みの変更だけ を送ります。git add しただけや、まだ何もステージングしていない変更は送られません。
ファイル編集 → git add → git commit → git push
↑ ここまでやって初めて送信されるgit pull - 変更をダウンロードする
git pull は、リモートリポジトリの変更を ローカルにダウンロード するコマンドです。
# リモートの最新状態を取得
git pull origin main
# 省略形(設定済みの場合)
git pull git pull
リモート ─────────→ ローカル
(GitHub / GitLab) (自分のPC)
「クラウドの最新変更を、手元にダウンロード」いつ pull するの?
- 作業を始める前 に毎回
git pullして最新状態にしましょう - チームメンバーが変更を push した後に取り込みたいとき
- 「あれ、自分の手元と GitHub の内容が違う」と感じたとき
push と pull の使い分けまとめ
| コマンド | 方向 | いつ使う? |
|---|---|---|
git push | ローカル → リモート | 自分の変更をアップロードしたいとき |
git pull | リモート → ローカル | 最新の変更をダウンロードしたいとき |
SSH と HTTPS の接続方法
GitHub / GitLab との通信には 2つの方法 があります。
HTTPS(簡単・初心者向け)
URL が https:// で始まる方法です。
git clone https://github.com/ユーザー名/リポジトリ名.git- メリット:設定が簡単、すぐ始められる
- デメリット:push のたびにユーザー名とパスワード(トークン)が必要な場合がある
パーソナルアクセストークン
最近の GitHub では、パスワードの代わりに パーソナルアクセストークン が必要です。GitHub の Settings → Developer settings → Personal access tokens から作成できます。
SSH(安全・上級者向け)
URL が git@ で始まる方法です。
git clone git@github.com:ユーザー名/リポジトリ名.git- メリット:一度設定すれば認証不要で push/pull できる
- デメリット:SSH鍵の初期設定がやや複雑
SSH鍵って何?
SSH鍵は 「デジタルな身分証明書」 のようなものです。あなたのパソコンに「秘密鍵」を保存し、GitHub に「公開鍵」を登録します。この2つがペアになっていることで、パスワードなしで安全に通信できます。
鍵と南京錠に例えると:
- 公開鍵(南京錠) → GitHub に渡す。誰でも見てOK
- 秘密鍵(鍵) → 自分だけが持つ。絶対に公開しない
どちらを選べばいい?
初心者の方 → まずは HTTPS で始める → 慣れたら SSH に切り替えるおすすめの進め方
最初は HTTPS で十分です。Claude Code を使う分には HTTPS で問題ありません。SSH の設定は余裕ができたときにチャレンジしましょう。
Claude Code とリモートリポジトリ
Claude Code は GitHub / GitLab と連携して、さまざまな操作を行えます。
Claude Code でできること
「このリポジトリをクローンして」
→ git clone を実行してくれる
「変更を GitHub にプッシュして」
→ git push を実行してくれる
「最新の変更をプルして」
→ git pull を実行してくれる
「プルリクエストを作って」
→ GitHub / GitLab にプルリクエストを作成してくれるプルリクエスト(PR)/ マージリクエスト(MR)
プルリクエストとは?
ブランチで作った変更を main に統合する前に、チームメンバーにレビューしてもらう仕組み です。
- GitHub では プルリクエスト(Pull Request / PR)
- GitLab では マージリクエスト(Merge Request / MR)
と呼びますが、同じものです。
Claude Code はプルリクエストの作成まで一気にやってくれます:
# Claude Code に頼む場合
> 「feature-login ブランチの変更でプルリクエストを作って」
# Claude Code が行うこと:
# 1. 変更を push
# 2. PR のタイトルと説明を自動生成
# 3. GitHub / GitLab に PR を作成リモート操作の全体フロー
┌─────────────────────────────────────────────────────────────┐
│ リモートリポジトリの基本フロー │
│ │
│ 【初回】 │
│ GitHub でリポジトリを作る → git clone でコピー │
│ │
│ 【日常の作業】 │
│ 1. git pull(最新を取得) │
│ ↓ │
│ 2. ファイルを編集 │
│ ↓ │
│ 3. git add → git commit(ローカルで保存) │
│ ↓ │
│ 4. git push(リモートに送信) │
│ ↓ │
│ 5. 1に戻る │
└─────────────────────────────────────────────────────────────┘練習してみよう
練習問題
練習 1:GitHub にリポジトリを作ってみよう
- GitHub にログイン
- 右上の「+」→「New repository」をクリック
- リポジトリ名を
git-practiceにする - 「Public」を選択(無料で使えます)
- 「Create repository」をクリック
- 表示された手順に従って、ローカルリポジトリと紐づける
練習 2:push と pull を体験しよう
- ローカルでファイルを作成・コミット
git pushで GitHub に送信- GitHub のページを開いてファイルが表示されることを確認
- GitHub 上でファイルを編集(ブラウザ上で編集できます)
- ローカルで
git pullして変更を取得 - ファイルが更新されていることを確認
コマンド早見表
| コマンド | 意味 | 使いどころ |
|---|---|---|
git clone URL | リポジトリをコピー | 既存プロジェクトに参加するとき |
git remote add origin URL | リモートを登録 | ローカルリポジトリとリモートを紐づけ |
git push | 変更をアップロード | コミットした後にクラウドに送る |
git push -u origin main | 初回のアップロード | 初めて push するとき |
git pull | 変更をダウンロード | 作業開始前に最新を取得 |
よくあるトラブルと対処法
push が拒否されたとき
! [rejected] main -> main (fetch first)これは「リモートにあなたが持っていない変更がある」という意味です。先に git pull して最新状態にしてから git push しましょう。
git pull # まず最新を取得
git push # その後に送信認証エラーが出たとき
remote: Support for password authentication was removedGitHub ではパスワード認証が廃止されました。パーソナルアクセストークン を使うか、SSH で接続しましょう。Claude Code に「GitHub の認証を設定して」と相談するのも一つの方法です。
まとめ
- GitHub / GitLab はコードのクラウドストレージ
git cloneでリモートリポジトリをコピーgit pushでローカルの変更をアップロードgit pullでリモートの変更をダウンロード- 接続方法は HTTPS(簡単)と SSH(便利)の2種類
- Claude Code は GitHub / GitLab と連携してプルリクエスト作成まで行える
- まずは HTTPS で始めて、慣れたら SSH に切り替えよう
Step 2 はこれで完了です。Git の基本をマスターしました。 次は Claude Code を実際に使ってみましょう!