2011-07-01 4 views
14

Comment puis-je cloner un référentiel Mercurial sans le dossier .hg pour gagner du temps (le projet est gros)? J'ai seulement besoin des fichiers tip.Clonage d'un référentiel Mercurial sans .hg

+0

Comment pensez-vous que cela ferait gagner du temps? Des modifications seraient-elles apportées à la copie non-repo? –

+0

@Joel B Fant No. – oaziz

Répondre

20

Le répertoire .hg est ce qui stocke toutes vos informations de référentiel. C'est-à-dire, des informations sur tous vos fichiers et leurs révisions suivies par le référentiel. En ce qui concerne le stockage, il est généralement très efficace car il est compressé en utilisant la différenciation binaire.

Lorsque vous clonez un référentiel, la seule chose clonée est le répertoire .hg. La copie de travail que vous obtiendrez après le clone sera récupérée à partir de ce .hg.

Si tout ce que vous voulez stocker est les informations du référentiel (disons sur un serveur), vous pouvez supprimer la copie de travail avec hg update null.

Si vous souhaitez créer un clone de votre référentiel sans les informations de révision, vous pouvez utiliser la commande hg archive (voir la référence ci-dessous). Sachez que cette copie est juste une "copie de travail" (pour utiliser une terminologie svn commune). Vous ne pouvez pas commettre, ni faire aucune autre opération mercuriale avec elle.

archives hg [OPTION] ... DEST

créer une archive sans version d'une révision du référentiel

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

To specify the type of archive to create, use "-t". 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" 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  
préfixe répertoire

pour les fichiers dans l'archive -r --rev révision pour distribuer -t --type type de distribution pour créer -I --include comprennent noms correspondant aux modèles donnés -X exclude excluent les noms correspondant aux modèles donnés

+0

À titre de clarification, la destination peut contenir des informations formatées fournies par la chaîne de format, mais un ancien chemin simple le fera également. Le formatage vous permet d'encoder des informations sur le repo dans le chemin vers lequel vous souhaitez archiver. –

Questions connexes