Git
リポジトリのクローニング
サーチ…
構文
- git clone [<options>] [ - ] <repo> [<dir>]
- git clone [--template = <template_directory>] [-l] [-s] [--no-hardlinks] [-q] [-n] [--bare] [ - ミラー] [-o <名前>リポジトリ>] [--dissociate] [-separate-git-dir <gitディレクトリ>] [--depth <深さ> ] [ - [no-] single-branch] [--recursive | - [サブディレクトリ] - [いいえ]浅いサブモジュール] - [ジョブ] [ - ] <リポジトリ> [<ディレクトリ>]
浅いクローン
膨大なリポジトリ(複数の履歴を持つプロジェクトなど)を複製するには、転送するデータの量が多いために時間がかかるか失敗する可能性があります。完全な履歴を使用する必要がない場合は、浅いクローンを作成できます。
git clone [repo_url] --depth 1
上記のコマンドは、リモートリポジトリからの最後のコミットだけをフェッチします。
浅いリポジトリでのマージを解決できない場合があることに注意してください。マージを解決するためにバックトラックする必要があるのは、少なくとも多くのコミットを取ることをお勧めします。たとえば、最後に50件のコミットを取得するには、次のようにします。
git clone [repo_url] --depth 50
後で必要に応じてリポジトリの残りの部分を取得することができます:
git fetch --unshallow # equivalent of git fetch -–depth=2147483647
# fetches the rest of the repository
git fetch --depth=1000 # fetch the last 1000 commits
レギュラークローン
完全な履歴とすべてのブランチを含むリポジトリ全体をダウンロードするには、次のように入力します。
git clone <url>
上記の例では、リポジトリ名と同じ名前のディレクトリに配置します。
リポジトリをダウンロードして特定のディレクトリに保存するには、次のように入力します。
git clone <url> [directory]
詳細については、 リポジトリのクローニングを参照してください。
特定のブランチをクローンする
リポジトリの特定のブランチを複製するには、リポジトリのURLの前に--branch <branch name>
します。
git clone --branch <branch name> <url> [directory]
--branch
に短縮形オプションを使用するには、 -b
と入力し-b
。このコマンドはリポジトリ全体をダウンロードし、 <branch name>
をチェックアウトします。
ディスクスペースを節約するために、以下を使用して単一のブランチにのみつながる履歴をクローンすることができます:
git clone --branch <branch_name> --single-branch <url> [directory]
--single-branch
コマンドに追加しないと、すべてのブランチの履歴が[directory]
複製されます。これは大きなリポジトリで問題になる可能性があります。
後で--single-branch
フラグを取り消し、残りのリポジトリ使用コマンドをフェッチするには:
git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*"
git fetch origin
再帰的にクローンを作成する
git clone <url> --recursive
リポジトリをクローンし、すべてのサブモジュールをクローンします。サブモジュール自体に追加のサブモジュールが含まれている場合、Gitはそれらもクローンします。
プロキシを使用したクローン作成
gitでプロキシでファイルをダウンロードする必要がある場合は、プロキシサーバをシステム全体に設定するだけでは十分ではありません。あなたはまた、以下を試すことができます:
git config --global http.proxy http://<proxy-server>:<port>/