Herunterladen eines bestimmten Tags mit Git

Ich versuche herauszufinden, wie ich ein bestimmtes Tag eines Git-Repositorys herunterladen kann - es ist eine Version hinter der aktuellen Version.

Ich sah, es war ein Tag für die vorherige Version auf der Git-Webseite, mit Objektname von etwas lange hex Zahl.

Aber der Versionsname ist "Tagged release 1.1.5" laut der Website.

Ich versuchte einen Befehl wie diesen (mit geänderten Namen):

git clone http://git.abc.net/git/abc.git my_abc

Und ich habe etwas erhalten - ein Verzeichnis, eine Reihe von Unterverzeichnissen usw.

Wenn es das gesamte Repository ist, wie komme ich dann an die gesuchte Version? Wenn nicht, wie lade ich diese spezielle Version herunter?

Lösung
$ git clone

wird Ihnen das gesamte Repository anzeigen.

Nach dem Klonen können Sie die Tags mit $ git tag -l auflisten und dann ein bestimmtes Tag auschecken:

$ git checkout tags/

Noch besser ist es, auszuchecken und einen Zweig zu erstellen (sonst befinden Sie sich auf einem Zweig, der nach der Revisionsnummer des Tags benannt ist):

$ git checkout tags/ -b 
Kommentare (18)

Ich bin kein Git-Experte, aber ich denke, das sollte funktionieren:

git clone http://git.abc.net/git/abc.git
cd abc
git checkout my_abc 

OR

git clone http://git.abc.net/git/abc.git
cd abc
git checkout -b new_branch my_abc

Bei der zweiten Variante wird ein neuer Zweig auf der Grundlage des Tags erstellt, wodurch ein "abgetrennter HEAD" vermieden werden kann. (git-checkout manual)

Jedes Git-Repository enthält die gesamte Revisionshistorie, so dass Sie durch das Klonen des Repositorys Zugriff auf den letzten Commit und alle davor liegenden Commits erhalten, einschließlich des gesuchten Tags.

Kommentare (3)

Sie können git archive verwenden, um ein Tar-Ball für ein bestimmtes Tag oder eine Commit-ID herunterzuladen:

git archive --format=tar --remote=[hostname]:[path to repo] [tag name] > tagged_version.tar

Sie können auch ein Zip-Archiv eines Tags exportieren.

  1. Tags auflisten:

     Git-Tag
    
     0.0.1
     0.1.0
  2. Exportieren Sie ein Tag:

     git archive -o /tmp/mein-repo-0.1.0.zip --prefix=mein-repo-0.1.0/ 0.1.0
  3. Hinweise:

  • Sie müssen das Format nicht angeben. Es wird vom Namen der Ausgabedatei übernommen.
  • Durch die Angabe des Präfixes wird Ihr Code in ein Verzeichnis exportiert (wenn Sie einen abschließenden Schrägstrich einfügen).
Kommentare (7)