У меня (грязная) производственная установка форума Simple Machines Forum (SMF 1.1.13). Это была чистая установка, однажды ... около пяти лет, двадцать обновлений и 40 модов назад. Не говоря уже о пользовательском коде, который был исправлен непосредственно в базе кода. Это началось как забавный побочный проект, и на начальном этапе не было никаких методов управления кодом.
Теперь SMF 2 (становится ближе) начинает работать, и я хочу обновить его. Но не оставляя пользовательских функций позади.
Продолжайте читать, это общий вопрос управления программным обеспечением, а не вопрос поддержки SMF ...
Я пытаюсь найти лучший способ перенести пользовательские функции в новую ветвь кода.
- В некоторых случаях пользовательская функциональность 1.1.x уже существует в 2.0. У меня нет работы для меня!
- В некоторых случаях будут версии пакетов для версий 2.0, и я могу просто установить их непосредственно в чистой сборке SMF 2. Да, минимальная работа для меня!
- В некоторых случаях порт кода будет довольно простым между двумя версиями (например, несколько небольших изменений в запросах или построении глобальной переменной). (Я перенес несколько функций / модов назад с 2.0 на 1.1.x, так что я начинаю знакомиться с ним.)
- В некоторых случаях мне просто нужно будет перестроить функции в основном с нуля.
Этими двумя вариантами будет сложно управлять.
Есть предложения о том, как перенести большое количество изменений из одной ветви в другую?
Когда это не мой собственный внутренний код. Вот мой первоначальный план:
- Разница между чистой версией 1.1.x и моим "грязным" рабочим кодом
- Сопоставить каждую строку diff с функцией («Это обновление кода - это особенность тегов, придется переносить их построчно, а в этой галерее есть галерея, я, вероятно, могу установить обновленный мод».) Это было бы SOMUCHEASIER, если бы существовал инструмент сравнения, который генерировал консолидированный отчет, вместо того, чтобы просматривать множество файлов по одному. Поиски в Google и SO не нашли такого инструмента ... Есть ли один?
- Установить чистую ветку 2.0
- Установить доступные обновленные моды
- Сверните мои рукава и просмотрите функцию различий по функциям (вот почему мне нужен сводный отчет о разностях. Было бы адски делать страницу за страницей.) И встроить их обратно.
Есть идеи получше? (Указатели на выпуск информации об управлении приветствуются, хотя, конечно, с оговоркой, что на самом деле это не мой код , поэтому у меня ограниченный контроль.)
В противном случае? Боюсь, что мои варианты - отказаться от пользовательских функций (на самом деле неосуществимо) или остаться на старой ветке. Оба сосут. Помогите!
tl; dr : укажите мне на инструмент сравнения, который будет делать консолидированные отчеты о файлах для файлов по всем каталогам. И / или помогите найти более простой способ переноса моего пользовательского кода.