Как объединить 2 версии одного и того же очень большого проекта - PullRequest
0 голосов
/ 26 апреля 2019

Итак, я отвечаю за переход с Java 1.5 на Java 1.8.Сначала мы меняем компилятор (с Ant на Maven), а затем мы переформатируем много кода.Мы также сняли каркас шва, что заняло у нас значительное время.

здесь все в порядке.

проблема в том, что другие коллеги продолжали работать в версии 1.5, и теперь мне нужно внести все эти изменения.Сюда входят новые объекты, пакеты, данные, конфигурации Hibernate и даже изменения в схеме базы данных.

Вопрос в том, как я могу переместить эти изменения без вечной головной боли?Обратите внимание, что в 75% файлов произошли изменения, поскольку почти все аннотации в проекте были изменены.

Большое спасибо и извините за мой плохой английский.

1 Ответ

0 голосов
/ 26 апреля 2019

Таким образом, не будет никакого волшебного инструмента, который бы автоматически объединял все изменения, но, безусловно, есть инструменты, которые помогут в поиске и отслеживании различий между всеми версиями, которые вам нужно объединить.

Ситуации, подобные этой, поэтому необходимо использовать хорошие общие практики кодирования и управления версиями!Я рекомендую взглянуть на настройку GIT-репозитория или какую-либо форму современного контроля версий для вашего проекта.

Я бы хотел сделать это слияние следующим образом:

  1. Создать исходный Git репозиторий проекта до того, как были внесены какие-либо изменения (до изменения 1.8 или коллеги)
  2. Скопируйте файлы проекта с наибольшим количеством изменений, внесенных в репозиторий, гарантируя сохранение настроек git для репозитория (скрытая папка .git)
  3. Вы должны иметь возможность запустить git status, чтобы увидеть файлы, которые были добавлены / изменены / удалены, и 'git diff', чтобы увидеть фактические изменения
  4. Зафиксировать изменения
  5. Ввести следующееизменений в репозиторий GIT
  6. Используя git status / git diff для просмотра различий в файлах, просматривайте изменения, сохраняя то, что вам нужно (повторяйте, пока все изменения коллег не объединены)

Существуют различные инструменты, которые помогут посмотреть на различия (различия) в файлах

При правильном контроле версий и хорошем инструменте различий, он долженобъединить ваши изменения :)

...