Я подозреваю, что у меня есть повреждение mergeinfo, но я не уверен. Кто-либо знает, как я сделал бы определение и что ресурсы там, чтобы помочь решить проблемы?
Вот проблема. Моя команда недавно переместилась в гибкий, и ответвления функции использования (история переходит действительно), где различные команды работают над теми же источниками одновременно. Поскольку история достигает высокого состояния готовности, которую команда объединяет с соединительной линией. Слияния занимают дни или недели из-за пропавших без вести изменений, неожиданных изменений и конфликтов. Мы говорим о командах 5-10 человек, и усилие/маслобойка кажется путем к высоко.
Люди используют этот шаблон слияния a) ПОЛУЧЕНИЕ ПО ЗАПРОСУ - соединительная линия к ответвлению слияния, твердость, тест, фиксируют НАЖАТИЕ b) - ответвление к соединительной линии слияния, твердость, тест, c) фиксации Воссоздают ответвление (или обычно создавайте новую историю, переходят и отбрасывают старый, так как это сделано),
К концу этого ответвление и соединительная линия должны быть в выравнивании.
Проблемы мы видим:
(1) Не должен происходить. Получение по запросу от ответвления для транкинга должно поместить два в синхронизацию для всех изменений уже на соединительной линии. Изменения в слиянии ответвления к соединительной линии являются изменениями, которые произошли на соединительной линии. Таким образом в первом слиянии они должны были распространить для ветвления, но не сделали. Это указывает на повреждение в mergeinfo данных, которые “скрыли” бы магистральные изменения.
(2) Не должен происходить. SVN должен управлять изменениями в отслеживании слияния. Это также указывает на повреждение в mergeinfo данных
(3) Не должен происходить. Это - случай нового файла, прибавил ответвление. Это должно обнаружиться как новый файл, добавленный к соединительной линии. Это также указывает на повреждение в данных информации о слиянии.
(4) Я полагаю, что это - ошибка SVN и что мы не можем зафиксировать это. Все еще, если бы это было нашей единственной проблемой, то я был бы счастлив
Мы в настоящее время находимся на svn 1.5.x сервер с клиентами, использующими svn 1.6.x и svn+ssh для соединения. Мы планируем подойти к последнему и самому большому SVN, так как некоторые меры могут повлиять на наши проблемы.
Однако, это верные взгляды как наши mergeinfo данные неправильно.
Какие-либо хорошие места для меня, чтобы начать смотреть?
Я провел несколько экспериментов с ветвлением / слиянием SVN и обнаружил, что бывают ситуации, когда слияние просто не работает - например, изменения из ствола перезаписываются. Так что, если вы продолжите использовать SVN для веток функций, вы попадете в мир боли.
Я провел аналогичные эксперименты с git и не нашел способа получить неправильное слияние. Если переход на git может быть приемлемым для команды / руководства, я настоятельно рекомендую его использовать.