Обратитесь к ртутной ревизии относительно именованной ревизии - PullRequest
8 голосов
/ 23 августа 2010

В git вы можете ссылаться на ревизии, например master^^, что означает две ревизии перед мастером. Можете ли вы сделать то же самое в Mercurial каким-то образом (или с некоторым расширением)? Например, если я хочу сделать «ревизию перед советом», что-то вроде tip^.

edit: Рафа упоминает hg parents, который работает на глубину 1 уровня. Как мне сделать это для произвольных уровней глубоко.

Ответы [ 3 ]

10 голосов
/ 23 августа 2010

Для команд, которые могут указывать ревизию, используйте -r -2 для ревизии до появления подсказки, -r -3 для ревизии до этого и т. Д.

От hg help revs:

Простое целое число рассматривается как номер редакции.Отрицательные целые числа обрабатываются как последовательные смещения от наконечника, при этом -1 обозначает наконечник, -2 обозначает исправление до наконечника и т. Д.

Существует также ParentrevspecExtension , который позволяет использовать синтаксис, такой как: tip^ для родителя tip, tip^^ для его родителя и т. Д.

3 голосов
/ 23 августа 2010

Как упоминал Найл С., когда ревизии линейны, можно использовать отрицательную спецификацию, чтобы вернуться назад, начиная с наконечника (очевидно, работает только с линейной историей).

Начиная с Mercurial 1.6, есть что-то похожее на Parentrevspec, но в основном для обозначения сложной спецификации ревизии: revsets .

Например, "p1(tip)" является первым родителем "tip" и т. Д.

1 голос
/ 23 августа 2010

Вы можете сделать "hg parent -r revision"

...