2017-02-15 3 views
1

Я добавил 4 патча в мое рабочее пространство. При создании этих патчей я использовал qnew -m "<commit-message>". Теперь я заметил, что я не получил надлежащего сообщения о фиксации. Как изменить все сообщения?Как изменить сообщение фиксации в hg mq?

Я пробовал несколько вещей:
$ hg ci;
abort: cannot commit over an applied mq patch

$ hg qci
abort: no queue repository

ответ

0

Вы не должны использовать мэк больше. Вместо этого используйте histedit, commit -amend или rebase. См. Это post.

1

Вы можете сделать это только до последнего примененного исправления в очереди через qrefresh. Если вам необходимо изменить все сообщения фиксации таким же образом, например, добавив проблему перед сообщением, вы можете написать скрипт, который это сделает. Предположим, что у вас есть все ваши исправления, тогда мы получим qref патч, а затем qpop до тех пор, пока все они не изменятся. qheader предоставит вам сообщение верхнего патча. Таким образом, используя bash, ваш сценарий будет выглядеть примерно так:

amendment="ISSUE-123: " 
echo "Let's go and change the patches" 
while [ $? -ne 0 ]; do 
    hg qref -m "${amendment} $(hg qheader)" && hg qpop 
done