Я пишу серию ловушек для изменений и фиксации, используя собственную реализацию Python Mercurial API . Частично это требует от меня сохранения определенной части информации, относящейся к моим хукам, такой как идентификатор последней ревизии, который мои хуки действительно видели.
Я хочу сделать это таким образом, чтобы все внешние метаданные сохранялись в хранилище, но фактически не отслеживались или игнорировались . Я хотел бы убедиться, что эти данные никогда не станут частью истории.
Моей первой мыслью было просто использовать существующую конфигурацию .hg/hgrc
, поскольку мне нужно хранить только простые строки и целые числа, и именно там в настоящее время живы те несколько строк конфигурации, которые используют мои хуки. API предоставляет простые средства для чтения этой конфигурации через ui.config*
, но, похоже, нет никаких средств для ее фактического изменения или записи.
Мне достаточно просто получить список конфигурации, добавить или изменить его, а затем написать его с помощью модуля конфигурации, но я действительно чувствую, что могу пропустить что-то, что предлагает API. Я продолжаю думать: «, если в зрелом API нет очевидных способов сделать это, я мог бы поступить неправильно»."
Есть ли «правильный» способ сделать это, возможно, с помощью API? Или, может быть, что-то, чего я не нашел в API для управления такого рода данными без использования hgrc
? Моя главная забота - гонки между несколькими людьми, толкающими одновременно.