Интересный вопрос, надеюсь, вы получите лучший ответ. Столкнувшись с похожими проблемами, я сделал следующее:
Переименуйте файлы конфигурации, чтобы, например, вместо noweb.cfg
у меня было noweb.cfg.default
. Этот файл изменяется редко и находится под контролем ревизии.
Фактический файл конфигурации, noweb.cfg
, может часто меняться, но помещается в файл .hgignore
, поэтому он никогда не сохраняется.
При необходимости у меня есть специальная цель Makefile, которая перестраивает *.cfg
из *.cfg.default
.
Это решение не является идеальным, поскольку изменения в файлах .cfg
теряются при изменении .cfg.default
. В принципе, вы могли бы решить эту проблему с помощью diff3 или более сложного инструмента слияния, но я никогда не был достаточно энергичным, чтобы туда попасть.