Была большая дискуссия о самой модели базы данных, но мы также сохраняем необходимые данные в.SQL файлах.
, Например, чтобы быть полезным, Вашему приложению, возможно, понадобилось бы это в установке:
INSERT INTO Currency (CurrencyCode, CurrencyName)
VALUES ('AUD', 'Australian Dollars');
INSERT INTO Currency (CurrencyCode, CurrencyName)
VALUES ('USD', 'US Dollars');
у Нас был бы файл названным currency.sql
при подрывной деятельности. Как ручной шаг в процессе сборки, мы сравниваем предыдущий currency.sql с последним и пишем сценарий обновления.
Это правда, что официального API не существует, но вы можете получить представление о передовых методах, прочитав другие расширения, особенно те, которые связаны с hg. Для этой конкретной проблемы я бы сделал что-то вроде этого:
from mercurial import ui, hg
from mercurial.node import hex
repo = hg.repository('/path/to/repo/root', ui.ui())
fctx = repo.filectx('/path/to/file', 'tip')
hexnode = hex(fctx.node())
Обновить В какой-то момент порядок параметров изменился, теперь он такой:
repo = hg.repository(ui.ui(), '/path/to/repo/root' )
Вы имеете в виду эту документацию ?
Обратите внимание, что, как указано на этой странице, нет официального API, потому что они по-прежнему оставляют за собой право изменить его в любое время. Но вы можете увидеть список изменений в последних версиях, он не очень обширный.