Подтвердить что ты не робот

Mercurial: простой способ увидеть изменения от последнего фиксации

В Mercurial я могу видеть текущие (незафиксированные) изменения, запустив

$ hg diff

Fine. Но после фиксации я иногда хочу снова увидеть этот diff (т.е. Разницу последних наборов изменений). Я знаю, что могу достичь этого

$ hg log -l 1
changeset:    1234
tag ...

$ hg diff -c 1234

Я ищу способ сделать это в одной строке.

4b9b3361

Ответ 1

Используйте hg diff -c tip или hg tip -p (короче, но работает только для подсказки).

Это будет работать до тех пор, пока вы не потянете что-то, поскольку tip является псевдонимом для самой последней версии, появляющейся в репо, либо с помощью локальной фиксации или pull/push из удаленных репозиториев.

Ответ 2

Вы можете использовать относительные номера версий для параметра --change:

hg diff -c -1

Подробнее см. fooobar.com/questions/139756/....

Ответ 3

Альтернативой является использование: hg diff --rev -2:-1

Эта форма имеет то преимущество, что ее можно использовать с помощью команды status (например, hg st --rev -2:-1), и ее использование позволяет легко запомнить, что делать, когда нужно определить различия между другими парами ревизий (например, hg diff --rev 0:tip).