web-dev-qa-db-ja.com

Gitシャロークローンをフルクローンに変換する方法

this so-questionのフォローアップ:浅いクローンがある場合、古いコミットをすべてフェッチして完全なクローンにする方法は?

182
Mot

git fetch --depth=1000000を実行できます(リポジトリのコミットが100万未満であると仮定)。

58
svick

以下のコマンド(gitバージョン1.8.3)は、浅いクローンを通常のクローンに変換します

git fetch --unshallow

次に、Originのすべてのブランチにアクセスするために(コメントの@Peterに感謝)

git config remote.Origin.fetch "+refs/heads/*:refs/remotes/Origin/*"
git fetch Origin
605
Ramkumar D

特定のコミットまでリポジトリを深める必要がありました。

man git-fetchを読んだ後、コミットを指定できないが、日付を指定できることがわかりました。

git fetch --shallow-since=15/11/2012

漸進的な深化が必要な人のために、別のman見積もり:

--deepen=<depth>

--depthと似ていますが、各リモートブランチ履歴の先端からではなく、現在の浅い境界からのコミット数を指定する点が異なります。

16

これを試すことができます:

git fetch --update-shallow
1
Altynai

上記のメッセージはどれもトリックを行いませんでした。私は浅いクローンから始めてgitタグで作業しようとしています。

最初に試した

git fetch --update-shallow

どの種類が中途半端に働いた。しかし、利用可能なタグはありません!

git fetch --depth=1000000

この最後のコマンドは実際にタグをフェッチし、最終的に実行できました

git checkout -b master-v1.1.0 tags/v1.1.0

それで終わりです。

HTH

0
Gen.Stack