開発・Git・設計の用語一覧へ
このページの目次

git cloneとは?

最終更新:2026/08/18

3秒でわかる

リモートのリポジトリを履歴ごと手元へ複製するコマンド。ダウンロードと違い、そのままコミットブランチ作成もでき、作業を始める最初の一歩になる。

もう少し詳しく

どういうものか

GitHub などのリモートリポジトリを、履歴と全ブランチの情報ごと手元のディレクトリへ複製するコマンドです。実行すると新しいフォルダが作られ、その中に作業ファイルと .git ディレクトリが置かれます。複製元は origin という名前で自動登録されるので、直後から git pullgit push が使えます。

ZIP でのダウンロードとの違いは履歴の有無です。ZIP は最新の状態だけをコピーした静止画のようなもので、コミットも git log もできません。clone は過去のコミット全部が手元に来るので、ネットにつながっていなくても履歴をたどれます。

なぜ必要か

チーム開発に参加するときの入口だからです。既存のプロジェクトに手を入れる作業は、ほぼ例外なく clone から始まります。

もう一つの役割は、壊れた作業ディレクトリを捨てて作り直す手段としてです。マージやリベースで手元がこじれたとき、原因を追うより別ディレクトリへ clone し直したほうが早い場面はよくあります。履歴はリモートにあるので、手元を捨てても失うのは未 push の変更だけです。

具体例

# 基本形。カレントディレクトリに repo という名前のフォルダができる git clone https://github.com/user/repo.git # フォルダ名を変えたいとき git clone https://github.com/user/repo.git my-app # 履歴が巨大で重いときは深さ 1 だけ取る git clone --depth 1 https://github.com/user/repo.git # 特定ブランチだけを取り出す git clone -b develop https://github.com/user/repo.git # 取得後の確認 cd repo git remote -v git log --oneline -5

つまずきやすいところ

  • 既に clone 済みのフォルダの中で、さらに clone してリポジトリを入れ子にしてしまう。実行前に pwd で場所を確かめる癖を付けると防げます

  • clone しただけでは他人のブランチがローカルに現れないので慌てる。git branch -a を打てばリモート追跡ブランチが見え、git switch develop で取り出せます

  • --depth 1 で取ったリポジトリは履歴が切れているため、git log が浅かったり一部の操作が失敗したりします。履歴を追う予定があるなら付けません

  • SSH の鍵を登録していない状態で SSH 形式の URL を使い、認証で弾かれる。まずは HTTPS の URL で試すほうが確実です
  • 似た用語との違い

    操作何をするか
    git init空のリポジトリを新規に作る。複製元は無い
    git clone既存のリモートを履歴ごと複製する。一度きり
    git pull既に clone した手元に、その後の更新を取り込む。何度でも
    forkGitHub 側で自分のアカウントに複製を作る。手元には何も落ちない


    他人のリポジトリへ変更を提案したい場合は、fork してから自分の fork を clone する流れになります。

    知識のつながり

    サイドバーと同じ推奨ルート・関連語を、まとめて確認できます。

    現在地git clone開発・Git

    LEARN BY DOING

    この用語を、教材で使ってみる

    直接関連する編と、その編を含むコースです。用語だけで終わらず、ブラウザ上で実際に手を動かせます。

    この用語に直接対応する公開中の編はまだありません。

    すべてのコースを見る