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.