Что такое Merge Base в MKS?

Из чтения руководства MKS Integrity я вижу следующее:

  • Объединить из — это ревизия, из которой объединяются блоки.
  • База слияния – это версия, которую вы хотите использовать в качестве основы для расчета различий по сравнению с слиянием из, которые будут применяться к слиянию с.
  • Объединить в — это рабочий файл, который используется в качестве основы для файла результатов слияния.

Что я не совсем понимаю, так это то, что такое «база слияния»? Если у меня есть новая песочница, я предполагаю, что у меня там все самое последнее, поэтому, если бы я должен был объединить изменения из ветки в эту песочницу, почему инструмент слияния MKS показывает мне третий файл (база слияния )? Откуда взялся этот файл и почему меня это может волновать - мне просто нужны различия между файлом в моей песочнице (слияние с) и файлом в ветке (слияние с)?

Я отключил его отображение в инструменте слияния, но кто-то, очевидно, посчитал это достаточно важным, чтобы показать и написать об этом в руководстве, поэтому я хотел бы лучше понять, что это такое и почему я мог бы (или не может) заботиться об этом.


person Jon    schedule 08.07.2014    source источник


Ответы (1)


Насколько я понимаю, это и есть слияние.

Итак, у вас есть ветка, созданная для изменения кода по какой-то причине, которую вы позже захотите интегрировать (объединить) обратно в ствол.

«Точка разделения», из которой была создана ветвь, используется как база слияния. Эта версия затем используется инструментом слияния MKS для поиска и, в конечном счете, оценки соответствующих изменений.

Если у вас нет более новых ревизий в транке, то база слияния — это просто файл из вашей песочницы (транка).

Но если на стволе есть более новые ревизии (имеется в виду, что вы/кто-то также разработали на стволе), то это не слияние заголовка ствола с выбранной ревизией ветки, а рассмотрение различий в каждой строке кода (ветвь, ствол ) из этой базы слияния.

Все это также применимо к слияниям ветвей/подотраслей.

Я должен признать, что это (для начала) действительно сложная вещь, и она станет еще более сложной, если вы уже сделали несколько слияний в одном и том же файле. Потому что вышеизложенное изменится таким образом, что база слияния будет рассчитываться до последнего слияния.

Надеюсь, это немного поможет. Если бы не комментарии...

person VeikkoW    schedule 24.07.2014
comment
Таким образом, база слияния на самом деле является фиксированной точкой, а не той версией, которую я хочу использовать для вычисления различий. Хорошо, это имеет больше смысла. Я полагаю, что (оценивая изменения в ветке и стволе из базы слияния) он будет помечать некоторые объединенные (из ветки) изменения как конфликты, даже если он правильно отсортировал конфликтующие изменения, и мне просто нужно сохранить полученный файл ? - person Jon; 29.07.2014