Это своего рода обходной путь и только половина того, что вы хотите, но вы можете заменить
$ hg add foo.o
с
$ hg add -I foo.o
Там написано «добавьте все, но только если оно не игнорируется и соответствует шаблону после -I
».
Пример:
$ ls -A
.hg .hgignore this
$ cat .hgignore
this
$ hg stat --all
? .hgignore
I this
$ hg add -I this
$ hg stat --all
? .hgignore
I this
Таким образом, вы можете видеть, что «это» не было добавлено и все еще находится в игнорируемом состоянии. Конечно, это не предупреждение, это отказ.