Как я могу использовать API Mercurial для определения изменений, внесенных в репозиторий для каждого набора изменений? Я могу получить список файлов, относящихся к определенной ревизии, но я не могу понять, как узнать, что случилось с этим файлом.Использовать API Mercurial для получения изменений в репозитории для данного набора изменений
Как я могу ответить на эти вопросы каждый файл в ревизией:
- Was добавил он?
- Удалено?
- Был ли он изменен?
Есть ли атрибут в контексте файла, который скажет мне это (если так, я не могу его найти), или есть способы понять это другими способами?
Вот мой код:
def index(request):
u = ui.ui()
repo = hg.repository(ui.ui(), '/path/to/repo')
changes = repo.changelog
changesets = []
for change in changes:
ctx = repo.changectx(change)
fileCtxs = []
for aFile in ctx.files():
if aFile in ctx:
for status in repo.status(None, ctx.node()):
# I'm hoping this could return A, M, D, ? etc
fileCtxs.append(status)
changeset = {
'files':ctx.files(),
'rev':str(ctx.rev()),
'desc':ctx.description(),
'user':ctx.user(),
'filectxs':fileCtxs,
}
changesets.append(changeset)
c = Context({
'changesets': changesets,
})
tmplt = loader.get_template('web/index.html')
return HttpResponse(tmplt.render(c))
мне очень интересно, что вы строите с этим кодом? – tonfa