117 votes

Mercurial (hg) ne valide que certains fichiers

J'essaie de ne valider que certains fichiers avec Mercurial. Parce que hg a ajouté automatiquement chaque fois que j'essaie de valider une modification, il veut valider tous les fichiers. Mais je ne veux pas cela parce que certains fichiers ne sont pas encore "prêts".

Il y a

 hg commit -I thefile.foo
 

mais ce n'est que pour un fichier. Le meilleur moyen pour moi serait de désactiver l’ajout automatique, comme dans Git. Est-ce possible?

151voto

Martin Geisler Points 44779

Vous pouvez spécifier les fichiers sur la ligne de commande, comme tonfa écrit:

$ hg commit foo.c foo.h dir/

Qui fonctionne et qu'est ce que je fais tout le temps. Vous pouvez également utiliser l' --include drapeau que vous avez trouvé et vous pouvez l'utiliser plusieurs fois comme ceci:

$ hg commit -I foo.c -I "**/*.h"

Vous pouvez même utiliser un fileset pour sélectionner les fichiers que vous souhaitez engager:

$ hg commit "set:size(1k - 1MB) and not binary()"

Il n'y a pas de paramètre désactiver l'ajout automatique de comportement et de rendre Mercurial travail comme Git. Cependant, la mq extension pourrait être d'intérêt. C'est une avancée de l'extension, mais il vous permet de vous faire pour

$ hg qnew feature-x     # create new patch
$ hg qrefresh -s foo.c  # add a file to the current patch
$ hg qrefresh -s bar.c  # add another file to the patch
$ hg qfinish -a         # convert applied patches to normal changesets

Je n'utilise pas la MQ pour cela moi-même, car je pense qu'il suffit juste de spécifier les noms de fichiers sur la ligne de commande.

0voto

Stephen Jennings Points 3429

Comme suggéré dans cette question sur le dépassement de capacité , le moyen le plus simple de procéder consiste à utiliser hg shelve .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X