Bir Git deposunun belirli bir etiketini nasıl indirebileceğimi bulmaya çalışıyorum - mevcut sürümün bir sürüm gerisinde.
Git web sayfasında önceki sürüm için bir etiket olduğunu gördüm, nesne adı uzun onaltılı sayı olan bir şeydi.
Ancak siteye göre sürüm adı "Tagged release 1.1.5
".
Şuna benzer bir komut denedim (isimler değiştirilerek):
git clone http://git.abc.net/git/abc.git my_abc
Ve bir şey elde ettim - bir dizin, bir grup alt dizin, vb.
Eğer deponun tamamı ise, aradığım sürüme nasıl ulaşabilirim? Değilse, söz konusu sürümü nasıl indirebilirim?
$ git clone
size tüm depoyu verecektir.
Klonlamadan sonra, etiketleri $ git tag -l
ile listeleyebilir ve ardından belirli bir etiketi kontrol edebilirsiniz:
$ git checkout tags/<tag_name>
Daha da iyisi, kontrol edin ve bir dal oluşturun (aksi takdirde etiketin revizyon numarasından sonra adlandırılan bir dalda olursunuz):
$ git checkout tags/<tag_name> -b <branch_name>
Git uzmanı değilim ama bunun işe yarayacağını düşünüyorum:
git clone http://git.abc.net/git/abc.git
cd abc
git checkout my_abc
VEYA
git clone http://git.abc.net/git/abc.git
cd abc
git checkout -b new_branch my_abc
İkinci varyasyon, etikete dayalı olarak yeni bir dal oluşturur ve bu da 'ayrılmış HEAD''den kaçınmanızı sağlar. (git-checkout manual)
Her git reposu tüm revizyon geçmişini içerir, bu nedenle repoyu klonlamak size en son işleme ve aradığınız etiket de dahil olmak üzere daha önce gelen her şeye erişim sağlar.
Belirli bir etiket veya commit kimliği için bir tar topu indirmek için git archive kullanabilirsiniz:
git archive --format=tar --remote=[hostname]:[path to repo] [tag name] > tagged_version.tar
Ayrıca bir etiketin zip arşivini de dışa aktarabilirsiniz.
Etiketleri listele:
git etiketi
0.0.1
0.1.0
Bir etiketi dışa aktarın:
git archive -o /tmp/my-repo-0.1.0.zip --prefix=my-repo-0.1.0/ 0.1.0
Notlar: