2009-11-02 15 views
8

SVN ile oldukça rahatım, ancak çevrimdışı işlemleri gerçekleştirme yeteneği açısından Mercurial'a bakıyordum. Anlayamadığım bir şey, dönüştürülmemiş bir ihracatın eski bir etiketli rev nasıl yapılır. SVN'de, etiketler repo'daki bir \ tag klasöründe yaşardı, o zaman bir şeyleri oradan ihraç edebilirdim, fakat Hg projeleri için aynı gövde-dal-etiket dizinleri kullanılmıyor gibi görünüyor (ya da onlar?Bir etiketin dönüştürülmemiş bir kopyasını Mercurial'dan dışa aktarma

Elde edebileceğim en iyi şey, deposu bir devirde klonlamak ve sonra .hg klasörünü silmektir. TortoiseHg ya etiketlerin listesini göstermiyor, bu yüzden klonladım, günlüğüne göz atarım, ne olursa olsun güncelleştirin, sonra /.hg dosyasını silin. Bu gerçekten beceriksiz görünüyor, tercih edilen bir yöntem var mı?

cevap

11

kullanın 'hg arşivi':

etiketli versiyonu kullanımını aktarın.

hg archive [OPTION]... DEST 

    create an unversioned archive of a repository revision 

    By default, the revision used is the parent of the working 
    directory; use -r/--rev to specify a different revision. 

    To specify the type of archive to create, use -t/--type. Valid 
    types are: 

    "files" (default): a directory full of files 
    "tar": tar archive, uncompressed 
    "tbz2": tar archive, compressed using bzip2 
    "tgz": tar archive, compressed using gzip 
    "uzip": zip archive, uncompressed 
    "zip": zip archive, compressed using deflate 

    The exact name of the destination archive or directory is given 
    using a format string; see 'hg help export' for details. 

    Each member added to an archive file has a directory prefix 
    prepended. Use -p/--prefix to specify a format string for the 
    prefix. The default is the basename of the archive, with suffixes 
    removed. 

    options: 

    --no-decode do not pass files through decoders 
-p --prefix  directory prefix for files in archive 
-r --rev  revision to distribute 
-t --type  type of distribution to create 
-I --include include names matching the given patterns 
-X --exclude exclude names matching the given patterns 

-r argüman etiket adlarını kabul edecek ve bir arşiv dosyası istemiyorsanız -t files bir dizin alacak.

+0

TortoiseHg, hg arşivini desteklemiyor gibi görünüyor, bana tüm etiketlerin listesini gösteren bazı kabuk komutları var mı? –

+2

"hg tags" işlevini kullanabilirsiniz. – tonfa

+1

TortoiseHg şimdi 'Export-> Archive 'yerel menüsü üzerinden' hg arşivi'ni destekliyor. – Pino

3

Belki "hg arşivi" mi arıyorsunuz? hg archive -r mytag ../export-tagged

İlgili konular