Как добавить параметр команды к существующей команде в расширении Mercurial?
Я работаю над расширением, которое включает в себя хук pre-commit. Я хотел бы иметь возможность получить новую опцию в моем хуке. Однако, если я добавлю его с помощью примера cmdtable из документации, подставив ссылку на существующую команду commit, он просто перезапишет встроенные параметры. Как правильно это сделать?
1 ответ
Решение
Это возможно с помощью extensions.wrapcommand
:
def commit(originalcommit, ui, repo, **opts):
return originalcommit(ui, repo, **opts)
def uisetup(ui):
entry = extensions.wrapcommand(commands.table, "commit", commit)
entry[1].append(('', 'newcommitoption', None, ('Description for the new commit option')))