Работа с репозиторием (Mercurial на Google Code)

Board index phpBBex 1.x Мастерская

Description: Только готовые решения! Статьи, заметки, моды и другие полезности для phpBBex 1.x и phpBB 3.0.x.
Moderator: Поддержка

Post #1by VEG » 22.04.2012, 18:11

Разработка phpBBex ведётся под управлением системы управления версиями Mercurial. Если вы разберётесь с ним, то получите удобный и быстрый инструмент для обновления вашего форума. Mercurial может сам загружать все самые свежие изменения в phpBBex прямо на ваш хостинг (через SSH), автоматически объединяя (если это возможно) ваши правки со свежим кодом phpBBex. Это намного удобнее, чем самостоятельно загружать все файлы и вручную переносить свои правки на новые версии. Mercurial стоит того, чтобы потратить время на его изучение.

Обратите внимание, что для использования Mercurial на вашем хостинге, он должен быть там установлен. Проверить, установлен ли у вас Mercurial очень просто — нужно подключиться по SSH и ввести команду hg version. Если вы увидите не ошибку, а информацию о версии — значит всё установлено. Иначе обратитесь в техническую поддержку хостинга, чтобы они вам установили Mercurial — как правило, хостеры без проблем соглашаются на это. На некоторых хостингах вы можете установить Mercurial и самостоятельно, но проще всё-таки через тех-поддержку, не зря же вы им деньги платите.

Хостинги, на которых был замечен предустановленный Mercurial:
  • nic.ru (на 201 тарифе)

Рассмотрим работу на вашем локальном компьютере. Для начала работы скачайте и установите подходящую версию TortoiseHg. Работать с Mercurial можно как при помощи GUI, так и при помощи командной строки. Управлять репозиторием значительно проще из командной строки, поэтому здесь будут примеры именно для неё.

Создать каталог forum с локальной копией репозитория phpBBex:
Code: Select all
hg clone https://code.google.com/p/phpbbex/ forum
Загрузить обновления в ваш локальный репозиторий (выполнять в каталоге с форумом):
Code: Select all
hg pull
Объединить все ваши правки с изменениями из последней версии phpBBex в репозитории (выполнять в каталоге с форумом):
Code: Select all
hg update
Для обновления до конкретной стабильной версии команда выглядит так:
Code: Select all
hg update v1.3.0

При обновлении могут возникнуть конфликты, если вы исправляли тот же код, который исправлен и в новой версии phpBBex. Если у вас не слишком много правок по отношению к phpBBex, то вероятность конфликта невелика. С установленным TortoiseHg в случае конфликта выскочит графическое окошко для разрешения конфликта (там будет код оригинала, ваш код, код из нового phpBBex), где вы сможете объединить ваш код и код из нового phpBBex.
Без TortoiseHg команда hg update просто отрапортует, что «n files unresolved» с n больше нуля (читайте что пишут эти команды), а перед этим укажет в каких файлах проблемы. Внутри тех файлов проблемные участки будут помечены знаками <<< (поиском по файлу найдёте), и будет вставлен как ваш, так и код из нового phpBBex. Вы должны объединить этот участок и сохранить.

Чтобы разобраться с Mercurial, рекомендуем серию статей о Mercurial для новичков: Hg Init. Скорее всего, когда вы начнёте пользоваться Mercurial, не будете понимать, как вы жили без него раньше :)

Пример работы

1. В Total Commander заходим в каталог, где нужно будет создать каталог с форумом
2. Запускаем консоль в текущем каталоге (внизу есть поле для ввода команд — пишем cmd и жмём enter)
3. Скачиваем phpBBex v1.2.0 в подкаталог forum командой:
Code: Select all
hg clone -r v1.2.0 https://code.google.com/p/phpbbex/ forum
4. Закрываем консоль. У нас появился каталог forum с файлами phpBBex версии 1.2.0
5. Изменяем что-нибудь (например, в шаблоне)
6. В каталоге forum запускаем cmd
7. Скачиваем последние изменения (рабочий каталог не изменится, они закачаются в каталог .hg)
Code: Select all
hg pull
8. Обновляем код в рабочем каталоге до версии 1.3.0
Code: Select all
hg update v1.3.0
В результате у вас должен получиться phpBBex версии 1.3.0, но с вашими правками.

Замечания касательно репозитория phpBBex

1. В репозитории каталог install называется install_forum. Это сделано для того, чтобы вы могли иметь рабочий форум и беспрепятственно обновлять из репозитория инсталляционные файлы. Для установки чистого phpBBex переименуйте install_forum в install. После установки переименуйте этот каталог обратно в install_forum.
2. В репозитории вы найдёте файлы стиля subsilver2. Это не рабочий стиль. Не устанавливайте его в админке. Удалять эти файлы также не стоит — в будущих версиях phpBBex, возможно, subsilver2 станет вторым поддерживаемым стилем. Они понадобятся для корректного обновления файлов.
3. Не стоит удалять какие-то файлы из стандартного репозитория только потому, что они вам не нравятся (например, каталог docs). Это может вызвать определённые трудности при обновлении. Хотя на самом деле любые удалённые файлы можно легко вернуть командой hg revert :)
4. Все файлы, которые напрямую не относятся к скриптам (дампы, бэкапы, ваши временные файлы, архивы модов и т.д.), необходимо хранить в подкаталоге work — этот каталог игнорируется системой контроля версий.
5. Учтите, что Mercurial обновляет только код. При изменениях в базе вы должны самостоятельно обновить свою копию. Если вы пользуетесь стабильными версиями, достаточно при переходе на очередную стабильную версию выполнить SQL код из инструкции по обновлению. Если же вы обновляетесь и до промежуточных версий, вы должны отслеживать изменения в схеме базы самостоятельно. При помощи Hg Workbench вы сможете посмотреть все изменения в файле ./install_forum/phpbbex.sql — новые инструкции из этого файла и необходимо выполнять.

Полезные команды для получения различий в коде между версиями

Получение изменений в стиле между версиями 1.5.3 и 1.6.0:
Code: Select all
hg diff -r v1.5.3 -r v1.6.0 ./styles/prosilver/ > prosilver.diff
Получение изменений в стиле между версией 1.6.0 и последней в репозитории:
Code: Select all
hg diff -r v1.6.0 ./styles/prosilver/ > prosilver.diff
Получение изменений в русскоязычных языковых файлах между версиями 1.5.3 и 1.6.0:
Code: Select all
hg diff -r v1.5.3 -r v1.6.0 ./language/ru/ > langru.diff
Получение изменений в русскоязычных языковых файлах между версией 1.6.0 и последней в репозитории:
Code: Select all
hg diff -r v1.6.0 ./language/ru/ > langru.diff

Все эти команды выводят данные в diff файле унифицированного формата.
Подробное описание унифицированного формата diff
Унифицированный формат вывода начинается с двухстрочного заголовка, который выглядит так:
--- FROM-FILE FROM-FILE-MODIFICATION-TIME
+++ TO-FILE TO-FILE-MODIFICATION-TIME


Потом следует один или несколько ханков различий; каждый ханк показывает одно место, где файлы различаются. Унифицированный формат ханка выглядит так:
@@ FROM-FILE-RANGE TO-FILE-RANGE @@
LINE-FROM-EITHER-FILE
LINE-FROM-EITHER-FILE...


Строки общие для обоих файлов начинаются с символа пробела. Различающиеся строки имеют один из следующих символов-индикаторов в левой колонке:
+ — в этом месте строка была прибавлена к первому файлу.
- — в этом месте строка была удалена из первого файла.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 6 years 3 months


Post #61by VEG » 11.02.2013, 21:05

Image

На будущее кто будет читать эти строки :) Выше скриншот с Google Code. По нему видно, что в файл добавлено 3 новых строки (новые опции), одна удалена (устаревшая опция), одна заменена (инструкция по удалению устаревших опций).
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 6 years 3 months

Post #62by Валентин » 21.02.2013, 18:23

Вот нифига не могу победить работу с репозитариями, как будто спецом все запутано.

Т.е. самая простая схема работы выглядит так:
1. Создаю локальную копию репозитария:
Code: Select all
hg clone https://code.google.com/p/phpbbex/ Forum_Rep
2. В папке Forum_Rep удаляю все, кроме папки .hg и файлов .hgignore и .hgtags (рабочую папку и файлы самого TortoiseHg) и копирую в нее все из рабочий папки /forum со своего хостинга. По команде:
Code: Select all
hg status
вижу, где отличия от репозитария.
3. Периодически делаю команду:
Code: Select all
hg pull
которая сливает с главного репозитария изменения в локальный, и, если изменения были, то дальше выполняю команду:
Code: Select all
hg update
которая объединит изменения (мои и с глобального репозитария) для файлов локального репозитария.

Ну а дальше что?
Вот появились изменения в репозитарии, нужно же как-то выполнить новые инструкции из phpbbex.sql, но какие? Как определить эти новые? Как получить такой список, чтобы сразу применить или только по одной строчке?
Ну потом вроде понятно, всю папку (кроме кроме папки .hg и файлов .hgignore и .hgtags) залить обратно на хостинг целиком, так?

Или проще сделать установку с нуля и накатить потом сверху заранее сохраненную базу данных (ну и скопировать объединенные изменения ессно)?
Валентин
Новичок
Reputation: 21
With us: 5 years 7 months

Post #63by VEG » 22.02.2013, 00:28

Валентин, чтобы понимать, какие иснтрукции из phpbbex.sql нужно выполнить, следует немного знать SQL. Вам наверное будет проще ждать следующего релиза phpBBex и обновляться через репозиторий до каждой стабильной версии. В каждом анонсе я публикую подробную инструкцию что именно нужно сделать для обновления. Одно отличие — вместо замены файлов вы делаете:
Code: Select all
hg pull
hg update v1.5.3
Эта инструкция обновит файлы до версии 1.5.3.

То есть общая схема получится примерно такая. Вы делаете клон репозитория до нужной версии командой:
Code: Select all
hg clone -r v1.5.0 https://code.google.com/p/phpbbex/ forum
Этим самым вы получите версию 1.5.0 в рабочем каталоге. Затем делаете нужные правки, работаете с движом. Затем видите в новостях — обновление! Делаете:
Code: Select all
hg pull
hg update v1.5.3
И у вас в рабочем каталоге файлы версии 1.5.3. Ну а дополнительные действия с базой вы прочитаете в анонсе новой версии. То есть в целом по стабильным версиям мигрировать проще. Если всегда использовать последнюю версию из репозитория — нужно немного самостоятельно анализировать произведённые изменения в БД.

Вообще я планирую немного упростить структуру файла phpbbex.sql — все новые инструкции всегда дописывать в конец, чтобы вы всегда могли взять хвост файла и выполинить появившиеся в самом конце файла инструкции. Также рассматривается вариант публикации необходимых изменений в базе в теме последних изменений в репозитории. Ну и самый крутой вариант — автоматический обновлятор. К сожалению, пока что по форуму много задач, поэтому до автоматики дело не дошло. Но ведь вещь в целом нужная и решающая кучу проблем с обновлениями — надеюсь, в скором времени удастся заняться её реализацией.

Добавлено спустя 7 минут 22 секунды:
Кстати, что интересно, таким образом можно и обновляться «назад», то есть откатывать версию. Например, у вас сейчас версия 1.5.3, а вы хотите откатиться до версии 1.4.0. Делаете:
Code: Select all
hg update v1.4.0
Ура, все ваши правки (где не возникло конфликтов) перенеслись на версию 1.4.0 :)
А просто команда hg update без номера релиза обновляет рабочую копию до самой последней версии из репозитория, которой ещё не присвоено никакой метки.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 6 years 3 months

Post #64by Валентин » 22.02.2013, 12:10

VEG
В таком случае, сложно ли всем изменениям в репозитарии присваивать метку? Ну там 1.5.3:01, 1.5.3:02 ... например?
То же самое в файле phpbbex.sql действительно делать все записи в пределах одной версии/билда между камментами с обозначением меток и в последовательном порядке? Или как вариант для каждой версии/билда свой отдельный phpbbex.sql (phpbbex.1.5.3-01.sql, phpbbex.1.5.3-02.sql ...)
Да и автоматизацию, хотя бы по-минимому не помешала бы, чтобы из ручных операций только проброс zip/gzip файлов и выполнение в phpMyAdmin импорта SQL инструкций (опять же из файла/ов), минимум ручной работы (зато при конфликтах все видно и проще разбираться - полной автоматизации все равно не достичь, каждый ставит какие-то моды и правки, которые могут иметь совместные пересечения). Без конфликтов/разборов и этот минимальный ручной труд автоматизируется при желании...

Интересно сделать опрос, какой процент установленных phpBBEx имеет возможность полноценного использования ssh/Mercurial на хостинге, а кто мучается вручную и для кого тада эти минорные изменения, если воспользоваться ими можно только путем кропотливого ручного труда, а так нужно ждать крупного изменения с изменением версии (да и то, не так-то просто и эти изменения применять, если конечно не профессиональный php/sql/html/css/javascript/ajax/[и еще куча страшных слов]-программист).
Валентин
Новичок
Reputation: 21
With us: 5 years 7 months

Post #65by VEG » 22.02.2013, 12:33

Валентин wrote:В таком случае, сложно ли всем изменениям в репозитарии присваивать метку? Ну там 1.5.3:01, 1.5.3:02 ... например?
На самом деле Mercurial сам вычисляет уникальную метку (хэш вида 46eefc49407d) для каждой ревизии. В истории всегда можно увидеть, когда появилась очередная метка стабильной версии. Если каждой ревизии присваивать ещё и метку — в репозитории будет полный бардак :) Посмотрите — там есть выпадашка «Tag» и в ней уже солидный список из вышедших версий. Если там будут ещё и все промежуточные версии (которых уже почти 600) — в этом списке будет невозможно ориентироваться.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 6 years 3 months

Post #66by kenguru74 » 22.02.2013, 19:02

Здравствуйте!
VEG wrote:Проверить, установлен ли у вас Mercurial очень просто — нужно ввести команду hg version
Куда ввести эту команду? Поясните нубу, плизз..
kenguru74 M
Новичок
Avatar
Age: 43
Location: Челябинск
Reputation: 0
With us: 5 years 7 months

Post #67by VEG » 22.02.2013, 19:51

kenguru74, подключиться к серверу по SSH.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 6 years 3 months

Post #68by Валентин » 23.02.2013, 02:35

VEG
А насчет sql?
Ну и опрос будет? Интересна же...
Валентин
Новичок
Reputation: 21
With us: 5 years 7 months

Post #69by VEG » 23.02.2013, 15:09

Валентин wrote:А насчет sql?
Отдельный файл на каждую ревизию — это тоже вряд ли. Иногда нужно что-то подправить в старых строках — этого точно никак таким образом не исправить :) А другие варианты рассмотрим.
Валентин wrote:Ну и опрос будет?
Может быть позднее. Вообще конечно Mercurial — это вариант для более продвинутых пользователей движка, которые занимаются модификацией своих форумов. Если у вас форум работает «как есть» без модификаций, то проблем с обновлением в виде закидывания архива нужной версии не будет. Ну а уж если взялись за модификацию, то с Mercurial хотя бы на локалке для автоматизации переноса своих же изменений разобраться стоит. Такая возможность точно у всех есть. И инструменты под Windows в TortoiseHg очень удобные. А синхронизировать содержимое каталогов можно тем же Total Commander по FTP.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 6 years 3 months

Post #70by Валентин » 23.02.2013, 15:36

VEG
Дело не в продвинутости пользователей движка, а в продвинутости (читай - цене, и немаленькой) хостинга. Да и далеко не все, даже продвинутые, хостинги имеют поддержку Mercurial.
И для модификации форума он не сильно нужен при наличии такого инструмента (доступного каждому), как AutoMOD.
А вот для применения изменений от разработчиков, да, таки нужен.
И речь таки идет о том, что установленный локально не может помочь в слиянии с изменениями от разработчиков с установленными модами, потому и грызу эту тему, бо совершенно пока еще не могу построить такой алгоритм и схему, как это сделать, не имея хостинга с Mercurial, а имя его только локалько, но оччччень надеюсь, что такая схема будет разработана и заработает...
Last edited by Валентин on 23.02.2013, 15:45, edited 1 time in total.
Валентин
Новичок
Reputation: 21
With us: 5 years 7 months

Post #71by VEG » 23.02.2013, 15:45

Валентин, так я же писал об использовании Mercurial на локалке как раз. Вы можете его установить прямо себе на компьютер и работать полностью в локальном каталоге. Для автоматической синхронизации вашего локального каталога с файлами на сервере по FTP можно использовать тот же Total Commander (Commands » Synchronize Dirs»). Также для этого есть и другие решения. Если есть SSH, но нет Mercurial, то может быть подойдёт RealSync. Я сам такими решениями не пользовался, поскольку у меня есть возможность использовать Mercurial прямо на сервере. Но если такой возможности нет — всегда можно подобрать подходящий софт для автоматической синхронизации каталога на вашем компьютере и каталога на FTP вашего сервера.

Добавлено спустя 2 минуты 49 секунд:
Валентин wrote:И речь таки идет о том, что установленный локально не может помочь в слиянии с изменениями от разработчиков с установленными модами, потому и грызу эту тему, бо совершенно пока еще не могу построить такой алгоритм и схему, как это сделать, не имея хостинга с Mercurial, а имя его только локалько, но оччччень надеюсь, что такая схема будет разработана и заработает...
А решение этой проблемы также очень простое — если у вас репозиторий на локалке, то и изменения нужно делать на локалке. Даже если вы используете AutoMOD, используйте его на локалке — а через синхронизацию его изменения пробросятся на ваш сервер.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 6 years 3 months

Post #72by Валентин » 23.02.2013, 15:50

VEG
Да что ж такое, почему постоянно упор идет на автоматическую синхронизацию - С НЕЙ НЕТ ПРОБЛЕМ!!!
На крайняк работает переброс архива с всем форумом - это не сложно сделать вручную или даже автоматизировать, никто ж не спорит.
Вот как правильно сделать это слияние (этот вопрос тоже вроде рассмотрели) - это была загвоздка, схему выработали, но применить и проверить пока не могу, все уперлось в применении SQL измененний - КАК ИХ ВЫДЕЛИТЬ ИЗ ОБЩЕЙ МАССЫ??? А без них обновлять файлы опасно...
Да, и когда речь идел о локалке - то это не хостинг, а hg, и форум в папке (просто файлы)...
Валентин
Новичок
Reputation: 21
With us: 5 years 7 months

Post #73by VEG » 23.02.2013, 16:14

Валентин, для этого сейчас нужно немножко ориентироваться в SQL.

Инструкции на вставку и замену каких-то данных выглядят так:
Code: Select all
REPLACE INTO phpbb_config (config_name, config_value) VALUES ('max_post_urls', '20');
Их нужно просто скопировать и выполнить (не важно в каком порядке).

Инструкции на изменение схемы таблицы выглядят так:
Code: Select all
ALTER TABLE phpbb_topics
   ADD COLUMN topic_priority mediumint(8) DEFAULT '0' NOT NULL AFTER topic_type,
   ADD INDEX topic_priority (topic_priority);
Если подобная конструкция появлиась сразу целиком — просто берём её и выполняем как есть. Если же в подобную конструкцию добавлена одна строка — оставляем первую ALTER TABLE phpbb_topics и ту, которая появилась, а остальные удаляем. При этом не забываем, что в конце запроса должен быть символ «;», а между инструкциями ADD — запятые.

Инструкции на обновление данных выглядят так:
Code: Select all
UPDATE phpbb_users SET user_dateformat = 'd.m.Y{, H:i}' WHERE group_id = 6;
Их просто берём и выполняем.

Инструкции на удаление данных:
Code: Select all
DELETE FROM phpbb_config WHERE config_name IN ('style_show_liveinternet_counter', 'style_google_analytics_id', 'copyright_notice_html', 'style_auto_new_year');
Конкретно этот запрос удаляет из базы устаревшие опции. При его изменении — просто берём и выполняем обновлённый вариант. С остальными нужно быть более внимательными — читать комментарий выше, и на основании этого делать вывод, нужно ли выполнять этот запрос.

Если вы видите, что какие-то строки без изменений просто переехали из одного места файла в другое — то выполнять их не нужно. Этот файл вообще изначально предназначен для конвертации phpBB в phpBBex, поэтому может производиться его реструктуризация для того, чтобы этот процесс происходил более гладко и удобно. Смотреть изменения по нему — это небольшой «лайвхак» :) Ближе к следующей версии постараюсь отработать более удобный принцип обновления базы.

Добавлено спустя 7 минут 56 секунд:
Некоторые запросы могут появляться изначально закомментированными, перед ними стоит два символа минус --. Выглядит это так:
Code: Select all
-- Remove subjects with "Re: "
-- UPDATE phpbb_posts SET post_subject = "" WHERE post_subject LIKE "Re: %";
Эти запросы нужно выполнять только в том случае, если вы считаете это необходимым — для работы phpBBex они не нужны. Что они делают написано в комментарии выше. Например, этот запрос удаляет все заголовки сообщений, начинающиеся с «Re: » — это может быть полезно при переезде с phpBB, где по умолчанию генерируется огромное количество тем с «Re: » в самом начале.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 6 years 3 months

Post #74by Валентин » 23.02.2013, 20:46

VEG wrote:Ближе к следующей версии постараюсь отработать более удобный принцип обновления базы.
Ох, глянул в файл, как запутанно... ну что ж, придется ждать новой версии.
ЗЫ. Получается, зря, при подготовке к обновлению, удалил мод Topic_Cement, все приоритеты послетали... :rambo:
Валентин
Новичок
Reputation: 21
With us: 5 years 7 months

Post #75by dream.reckless » 24.02.2013, 00:20

VEG wrote:замене файлов старой версии на файлы новой версии и ручной перенос ваших правок

То есть, если нет модификаций, то достаточно обновления файлов? Просто заменить на фтп и все?
dream.reckless
Бывалый
Avatar
Reputation: 5
With us: 5 years 8 months

Post #76by JoteRuso » 24.02.2013, 00:57

dream.reckless wrote:То есть, если нет модификаций, то достаточно обновления файлов? Просто заменить на фтп и все?
Почти... Смотря с какой старой версии обновляетесь.

Обновление c phpBBex 1.5.x до 1.5.3
1. Сделать резервную копию вашего сайта (на всякий случай)
2. Заменить все файлы (кроме config.php!) предыдущей версии phpBBex. (Используйте Mercurial для автоматического сохранения ваших модов. Если модов нет, но и переживать по этому поводу не стОит.)
3. Выполнить SQL команду:
Code: Select all
REPLACE INTO phpbb_config (config_name, config_value) VALUES ('phpbbex_version', '1.5.3');
4. Сбросить кэш в админке и в браузере, обновить шаблоны, стили и наборы изображений.

Обновление с версии 1.4.0 смотрите тут.
JoteRuso M
Гуру
Avatar
Location: Москва, Россия
Reputation: 536
With us: 6 years 3 months

Post #77by Валентин » 25.02.2013, 10:29

VEG
А для прикидки, примерно, когда можно ожидать новую версию с переработанным файлом с SQL изменениями?
Валентин
Новичок
Reputation: 21
With us: 5 years 7 months

Post #78by VEG » 25.02.2013, 12:36

Валентин, здесь я писал о примерных сроках выхода релиза 1.6.0.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 6 years 3 months

Post #79by Валентин » 26.02.2013, 17:53

VEG
3 месяца - срок не малый (да и то, не факт еще), поэтому решил попробовать обновиться.
По результатам изменений (с ревизии 543, которую установил изначально, по ревизию 585, вроде последняя на сегодняшний момент) сформировал файл импорта для сервера SQL, хотя бы одном глазком прикиньте, в верном направлении иду?
Attachments
change.sql.txt
(1.95 KiB) Downloaded 353 times
Last edited by Валентин on 26.02.2013, 18:00, edited 1 time in total.
Валентин
Новичок
Reputation: 21
With us: 5 years 7 months

Post #80by VEG » 26.02.2013, 17:59

Из того что вы собрали выкинул явно лишнее, получилось:
Code: Select all
REPLACE INTO phpbb_config (config_name, config_value) VALUES ('style_back_to_top', '1');
REPLACE INTO phpbb_config (config_name, config_value) VALUES ('style_rounded_corners', '1');
REPLACE INTO phpbb_config (config_name, config_value) VALUES ('style_new_year', '-1');
DELETE FROM phpbb_config WHERE config_name IN ('style_auto_new_year');

ALTER TABLE phpbb_topics
   ADD COLUMN topic_priority mediumint(8) DEFAULT '0' NOT NULL AFTER topic_type,
   ADD INDEX topic_priority (topic_priority);

ALTER TABLE phpbb_forums
   ADD COLUMN forum_topic_show_days smallint(4) UNSIGNED DEFAULT '0' NOT NULL AFTER forum_rules_uid,
   ADD COLUMN forum_topic_sortby_type varchar(1) DEFAULT '' NOT NULL AFTER forum_topic_show_days,
   ADD COLUMN forum_topic_sortby_dir varchar(1) DEFAULT '' NOT NULL AFTER forum_topic_sortby_type;

REPLACE INTO phpbb_config (config_name, config_value) VALUES ('gzip_compress', '0');
REPLACE INTO phpbb_config (config_name, config_value) VALUES ('style_vt_show_post_numbers', '0');
REPLACE INTO phpbb_config (config_name, config_value) VALUES ('style_posting_topic_review', '1');
Судя по всему вы также смотрели изменения в SQL файлах из каталога ./install/schemas/. Но на самом деле там описаны те же самые изменения, что и в phpbbex.sql, только там они оформлены для чистой установки новой версии phpBBex. То есть что изменилось в базе можно смотреть или там или там, а запросы на изменение структуры базы следует брать только из phpbbex.sql.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 6 years 3 months

PreviousNext

Return to Мастерская



cron