Von git-clone (1) Handbuchseite
--branch
kann auch Tags nehmen und den HEAD bei diesem Commit im resultierenden Repository trennen.
Ich habe es versucht
git clone --branch <tag_name> <repo_url>
Aber es funktioniert nicht. Es gibt zurück:
warning: Remote branch 2.13.0 not found in upstream origin, using HEAD instead
Wie benutze ich diesen Parameter?
clone
, und ich war festgefahren, warum - Zweig funktioniert nicht “. Die beste Antwort dieser URL verwendetclone
->checkout
, die meine Frage nicht lösen kann. :)Antworten:
Dieser Befehl wird in Git 1.7.9.5 nicht unterstützt.
Ich benutze Git 1.8.3.5 und es funktioniert
quelle
--depth 1
, um das Herunterladen nicht aktueller Commits zu vermeiden.git tag
, zeigt es kein TagVerwenden Sie die
--single-branch
Option, um nur den Verlauf zu klonen, der zur Spitze des Tags führt . Dies erspart viel unnötigen Code vor dem Klonen.quelle
--single-branch
gleichbedeutend mit--depth 1
?--single-branch
impliziert, wenn--depth
verwendet wird. Aus dem HandbuchWhen creating a shallow clone with the --depth option, this is the default
Wird schneller sein als:
Oder
quelle
--depth 1
ist ein Juwel, so viele Leute laden die gesamte Git-Geschichte herunter, nur um die zu nutzenHEAD
.--depth 1
sollte standardmäßig eingestellt werden; Wenn jemand versucht, ein vorheriges Commit zu überprüfen, sollte er aufgefordert werden, den Rest herunterzuladen.Verwenden Sie den Befehl
um zu sehen, ob dein Git den Befehl unterstützt
Wenn nicht, gehen Sie einfach wie folgt vor:
quelle
Das Klonen eines bestimmten Tags kann den Status "Trennender HEAD" zurückgeben .
Versuchen Sie als Problemumgehung, zuerst das Repo zu klonen und dann ein bestimmtes Tag auszuchecken. Beispielsweise:
Hinweis: Seit Git 1.8.5 können Sie
-C <path>
anstelle von--work-tree
und verwenden--git-dir
.quelle