← 用語集一覧へ戻る

クローン(git clone)

git clone
version-control beginner
GitHubなどのリモートリポジトリを自分のパソコンに複製(コピー)するコマンドのこと。
クローン(git clone) (git clone)

概要(サマリー)

クローン(git clone)とは、GitHubなどのリモートリポジトリを自分のパソコンにまるごとコピーするコマンドのことである。

「クローン」という言葉の通り、遠くにあるリポジトリの完全なコピーをローカルに作る操作だ。コードの全ファイルはもちろん、これまでのすべてのコミット履歴も含めて複製される。他の人のプロジェクトを手元で動かしたいとき、チームに参加して開発を始めるとき、AIが生成したリポジトリをダウンロードするときなど、開発の出発点となる操作として頻繁に使われる。

詳細解説

git clone とは何か

Gitにはローカルリポジトリ(自分のPC上)とリモートリポジトリ(GitHubなどのサーバー上)という2種類の場所がある。git clone は「リモートにあるリポジトリをローカルにコピーしてくる」コマンドだ。

単なるファイルのコピーと違い、Gitの履歴情報(すべてのコミット記録)もセットでコピーされる。クローン後はすぐに git log でコミット履歴を確認したり、ブランチを切って作業を始めたりできる。

基本的な使い方

git clone リポジトリのURL

GitHubのリポジトリページにある「Code」ボタンを押すと、クローン用のURLが表示される。これをコピーして使う。

# HTTPS でクローン(GitHubのユーザー名・パスワード / トークン認証)
git clone https://github.com/ユーザー名/リポジトリ名.git

# SSH でクローン(公開鍵認証を設定済みの場合)
git clone git@github.com:ユーザー名/リポジトリ名.git

# クローンしたあとフォルダに移動して作業を始める
cd リポジトリ名

HTTPS方式とSSH方式の2種類があり、初心者には設定が不要なHTTPS方式が始めやすい。

クローン後のフォルダ構成

git clone を実行すると、現在のディレクトリの中にリポジトリ名のフォルダが作られ、その中にファイルが展開される。

現在のフォルダ/
  └── リポジトリ名/   ← クローンされたフォルダ
      ├── .git/       ← Gitの管理情報(触らない)
      ├── src/
      ├── package.json
      └── README.md

.git フォルダにはGitの管理情報が入っており、通常は直接編集しない。

フォルダ名を変えてクローンする

# リポジトリを "my-project" という名前でクローンする
git clone https://github.com/ユーザー名/リポジトリ名.git my-project

URLの後ろにフォルダ名を指定すると、クローン先のフォルダ名を変えられる。

クローンと fork の違い

GitHubには「fork(フォーク)」という操作もある。cloneとforkは似ているようで異なる。

操作 意味 用途
clone リモートリポジトリをローカルにコピーする 手元で作業するため
fork 他人のリモートリポジトリを自分のGitHubアカウントにコピーする 独立した改変やPR送信のため

AIコーディングとの関係

AIがコードを生成してくれる場合、「GitHubにリポジトリを作ってそこにコードを置いておきますね」という流れになることがある。その場合のダウンロード手順が git clone だ。また、GitHubで公開されているAI関連のツールやサンプルプロジェクトを試したい場合も、まず git clone で取得するのが標準的な手順だ。

AIへの効果的な指示の例:
- 「このGitHubリポジトリをクローンして動かすまでの手順を教えてください(URL: ...)」
- 「クローンしたあとに npm install でエラーが出ました。このエラーメッセージを見て原因を教えてください」
- 「SSH鍵の設定をしていないのでHTTPS方式でクローンしたいです。手順を教えてください」

よくある勘違い

clone と download の違いは?

GitHubには「Download ZIP」というボタンもある。ZIPダウンロードはファイルだけを取得するが、Gitの履歴情報は含まれない。git clone はGitの履歴ごとコピーするため、クローン後に git log で履歴確認や git pull で最新版への更新ができる。開発に参加するなら git clone を使うのが正しい。

クローンしたら自動的に最新状態になる?

クローンした時点のスナップショットがローカルに作られる。その後リモートで更新があっても、ローカルは自動的には更新されない。最新の状態に更新したい場合は git pull を実行する必要がある。

プライベートリポジトリはクローンできない?

プライベートリポジトリはアクセス権がないとクローンできない。GitHubへのログイン(HTTPS方式)または公開鍵認証(SSH方式)の設定が必要だ。

まとめ

  • git cloneとは、リモートリポジトリをローカルに丸ごとコピーするコマンドのことである
  • コミット履歴も含めてコピーされるため、クローン後はすぐに開発を始められる
  • HTTPS方式とSSH方式があり、初心者にはHTTPS方式が設定なしで使いやすい
  • cloneはローカルへのコピー、forkはGitHub上での複製という違いがある
  • クローン後の最新状態への更新は git pull が必要

情報ソース

より詳しくAIに聞いてみよう

  • git clone とは何かを、初心者でもわかるように説明してください。
  • git clone と GitHub の「Download ZIP」の違いを教えてください。
  • SSH でクローンするための公開鍵認証の設定手順を教えてください。
  • git clone 後に npm install → npm run dev でローカル起動するまでの一般的な手順を教えてください。
  • AIコーディングで「リポジトリをクローンして試したい」とき、どのような手順で進めればよいですか?