Имея две ветки, как я могу найти последнюю ревизию (и), в которой две ветки были объединены? Есть ли для этого стандартная команда Mercurial?
Это то же самое, что и вопрос Как найти общего предка двух ветвей в SVN? , но для Mercurial вместо subversion.
Я не понимал, почему ответ Ленивого Барсука был правильным, поэтому мне пришлось нарисовать небольшой рисунок, и теперь я понял:
Когда две ветви объединяются, они на самом деле не «объединяются», но изменения из одной ветви интегрируются во вторую ветвь. Это означает, что фиксация слияния принадлежит только исходной ветке, а не объединенной ветке. Вот почему ревизия слияния является одной из двух дочерних ревизии предка.
Это, вероятно, лучше всего видно на картинке:
default o----o----a---b---o---o
\ \
other `-o---o---m---o
ancestor(default,other) == a
children(ancestor(default,other)) == (b,m)
children(ancestor(default,other)) and merge() == m