1. ホーム
  2. git

[解決済み] 特定のコミットを深さ1でシャロークローンする方法は?

2022-09-20 12:39:47

質問

リポジトリ内の特定のコミットを深さ1で浅くクローンすることはできますか?次のようなものです。

git clone http://myrepo.git 728a4d --depth 1

でコミット時のリポジトリの状態を取得し、SHAで 728a4d... ?

動機は、特定のコミットにおけるリポジトリの状態にしか興味がないときに、リポジトリ全体をクローンして、その特定のコミットをチェックアウトする必要がないようにするためです。

どのように解決するのですか?

Git 2.5.0から(以下の場所で利用可能である必要があります。 両方共 クライアント側とサーバー側で uploadpack.allowReachableSHA1InWant=true をサーバ側で実行し、特定の SHA1 の取得を可能にします。

git init
git remote add origin <url>
git fetch --depth 1 origin <sha1>
git checkout FETCH_HEAD

でこれを行う構文は見つかりませんでしたのでご注意ください。 git clone を直接使用します。