Mercurial: advertir al añadir archivos que de otra manera serían ignorados?
Pregunta
¿Cómo se puede pedir a Mercurial avisarme antes de agregar los archivos que de otra manera serían ignorados?
Por ejemplo, algo como:
$ hg add foo.o
warning: adding ignored file foo.o
No parece haber sido presentado un parche a la lista de correo: https://www.mercurial-scm.org/pipermail/mercurial-devel/2008-February/004993.html
Pero no puedo encontrar más referencias a él.
Solución
Es una especie de una solución hacky y sólo la mitad de lo que desea, pero se puede sustituir
$ hg add foo.o
con
$ hg add -I foo.o
que dice "añadir todo, pero sólo si no ha ignorado y que coincide con el patrón después de -I
".
Un ejemplo:
$ ls -A
.hg .hgignore this
$ cat .hgignore
this
$ hg stat --all
? .hgignore
I this
$ hg add -I this
$ hg stat --all
? .hgignore
I this
Así se puede ver que "esto" no se añadió y se encuentra todavía en estado ignorado. Por supuesto, eso no es una advertencia, es una negativa.
Otros consejos
Uso hg addremove
. No va a añadir ficheros ignorados.
Extracto de addremove documentación
Los nuevos archivos se ignoran si coinciden con ninguno de los patrones en .hgignore. Al igual que con complemento, estos cambios tendrán efecto en la próxima confirmación.
Esto no ayudará mucho en el complemento, pero se puede coger durante comprometerse mediante el uso de una pretxncommit gancho .