SORU
16 Kasım 2009, PAZARTESİ


Mercurial deposu parçası kopyalayabilir miyim?

Mercurial deposu parçası klonlamak mümkün mü? Hadi depoyu oldukça büyük olduğunu söylüyorlar, ya da birden fazla proje ya da birden çok dalları içerir. Depoyu yalnızca bir kısmını kopyalayabilir miyim?

E. g. Subversion, trunk branches olabilir. Eğer sadece gövde (veya dallar), isterseniz sadece [project]/trunk rica edebilirim. Eğer hg repo ben klon gövde ve dalları. Bu istemediğim bir sürü bilgi olabilir. Bu almamak miyim?

Alternatif olarak, eğer bir hg repo birden fazla proje yapmak istiyorum, bunu nasıl yapmalıyım? I. e. sadece projelerden biri alıp diğerlerini göz ardı edebilirim.

CEVAP
14 ŞUBAT 2011, PAZARTESİ


Evet. Sen hayatına devam ettin eminim, ama daha sonra burada dolaşmak verecek olanların iyiliği için, http://mercurial.selenic.com/wiki/ConvertExtension, dokümanlar takip ettim ve basit bir toplu iş komut dosyası yazdı:

@echo off
echo Converting %1
REM Create the file map
echo include %1 > ~myfilemap               
echo rename %1 . >> ~myfilemap 
REM Run the convert process
hg convert --filemap ~myfilemap .\ ..\%1   
REM Delete the file map
del ~myfilemap                             
cd ..\%1
REM update the new repo--to create the files
hg update                                  

split.cmd gibi bir şey adı ve bölmek istediğiniz repo dizine koy. Diyelim örneğin C:\repos\ReallyBigProject, ve bir alt C:\repos\ReallyBigProject\small-project. Komut satırında çalıştırın:

cd\repos\ReallyBigProject
split.cmd small-project

Bu büyük proje revizyonları, ilgili tarihten bir parça ile C:\repos\small-project oluşturur.

convert varsayılan olarak etkin değildir. Aşağıdaki satırları emin olmak için .hg\hgrc dosyası (c:\repos\ReallyBigProject\.hg\hgrc benim örnekte) ihtiyacınız olacak:

[extensions]
hgext.convert=

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • FUzzyBUnnyBOoties

    FUzzyBUnnyBO

    3 EKİM 2007
  • happyjpy

    happyjpy

    22 AĞUSTOS 2009
  • PlayStation

    PlayStation

    16 Aralık 2005