![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
ArNic |
|
||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 278 Регистрация: 3.1.2007 Репутация: нет Всего: нет |
У меня несколько проектов. Каждый день я что либо дорабатываю в ядре и модулях, для того чтобы помнить изменения пользуюсь SVN. НО это не решает основной проблемы обновления системы. Замена для меня не совсем верное решение. Есть ли описание или какая либо документация по гибкому обновлению некомпилированного кода. Т.е. чтобы можно было при наличии незначительных разниц между двумя модулями внести в оба кода новую логику.
Пример: Файл №1
Файл №2
$i=1 или $i=true заменить на $i=isset($j); else заменить на elseif($u!=1); Пытаюсь понять как другие системы проводят обновление, но у них, как я понял xml файл с инструкциями замены, добавления, удаления. И, если размер обновляемого файла или версия не верны он отказывается обновлять. Если у кого есть более универсальные решения или документация с описанием решений очень буду рад услышать... и наверное не только я. Это сообщение отредактировал(а) ArNic - 20.3.2012, 22:28 |
||||
|
|||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
А чем не подходит svn? Просто каждый раз, когда отдаешь клиенту код, который должен быть работоспособным - делаешь тэг и сохраняешь код там. Или, если есть уверенность, что код будет сильно изменяться - сразу заводишь бранч.
Если пришла пора обновить клиенту код - восстанавливаешь по тэгу состояние кода клиента, делаешь бранч (если не было) и сливаешь туда критичные/нужные изменения из основной ветки. После этого делаешь патч, сравнивая исходное состояние и слитые изменения. Патч грузится на сервер и там применяется. Патчилка - отдельный скрипт на php. -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
Sanchezzz |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1670 Регистрация: 19.11.2006 Где: Voronezh Репутация: 41 Всего: 60 |
1 можно держать суму контроль версии файлов дата изменения файла + размер
2 если у вас все функции в классах то делайте версию в классе это правда лениво затем я писал отдельно сервер обнавлений который спрашивал если новая версия файлов если есть отдавал zip архив и распаковывал стойже структурой файлов для распаковки и запаковки использовал класс dunzip2.class файлы на серверной части хранил $downid версия '0001' по минор типу версий 0 ключ не действителен 1 файл не найден... северная часть
клиент версия //обнавление
Добавлено через 10 минут и 42 секунды вот еще пригодится проверяет если в таблице поле
-------------------- Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS. |
||||||
|
|||||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |