- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Читайте условия.
Мне не нужны системы управления версиями, я ими и так пользуюсь, в том числе, самописной.
Мне не нужны системы деплоя, я их и так использую.
У меня есть задача работы с проектом, который очень давно не я начал, и не я его буду заканчивать. С установившейся системой патчей.
wdiff на данный момент устраивает.
meld даёт красивый удобный GUI, но годится не во всех случаях.
есть ещё kdiff3 если для линя. (у меня в крусайдере он используется)
Для винды в тоталкоммандере есть сравнивалка нормальная.
Всё-таки meld часто лажает. Не синхронизируется, выдаёт кашу.
wdiff намного точнее, чётко указывает, что изменилось, и даже пробелы/табуляция с толку не сбивают.
в meld можно опциями отключить реакцию на пробелы/табуляции. да... лажает иногда, еще раздражает не логичный захват фигурных скобок.
а чем можно просматривать вывод wdiff? желательно из готового, хотя самому набросать пару регулярок тоже не проблема. :)
наткнулся еще на diffuse (есть на epel) - вроде симпатичная вещь, попробую погонять его как альтернативу meld. кстати, в нем можно сравнивать и три файла одновременно, эх... монитор бы мне пошире 😂
а чем можно просматривать вывод wdiff?
Не совсем понял.
Сделать вывод наглядным? Он сам делает подсветкой.
Я обычно пользуюсь опцией -3 для вывода только различий, и -t для подсветки.
Где прибыло, подчёркнуто. Где убыло, подсвечено.
Можно копировать выделением мышкой прямо в консоли и вставлять в код (но тут форматирование несколько ломается — пробелы и табуляции GUI и CLI передают через буфер по-разному, либо в CLI нет табуляции, я не знаю, не заморачивался).
Возможно, кому-то будет интересно решение задачи сравнения структур живых баз.
Всё это нужно с целью миграции между версиями движков.
Провёл небольшое исследование, выбрал то, что рабочее и может пригодиться (пригодилось).
Web-based
1. https://github.com/muatik/mysqlDiff
В index.php назначаем root доступ, на выходе цветное.
2. https://github.com/dilana/mysqldiff
Отличная вещь!
Нормальный интерфейс, diff в таблице.
3. https://github.com/thejwalker/mysql_diff
Отличная вещь!
В конфиге прописываем 2 базы,
На выходе красочный список изменений.
4. https://github.com/chriscurran/db_diff
В конфиге прописываем 2 базы,
На выходе красочный список изменений с разворачивающимися таблицами.
SQL
Выполнить запрос в консоли, подставив названия баз вначале.
Выведет таблицу с изменёнными столбцами
-----
Есть ещё разные средства, которые я не смог запустить в данный момент в своём окружении по тем или иным причинам, тем не менее, обещающие быть интересными. Оставил на потом.
Так, чтобы генерировало SQL запросы, производящие "патч" базы пока не нашёл, всё приходится делать вручную. Заняло довольно немного времени при миграции форума между существенно отличающимися версиями+сборками.
MySQL SHOW CREATE помогает, остальное на болванке — заводишь нужные столбцы, удаляешь ненужные, перемещаешь то, что должно быть перемещённым.
В Adminer (как и в PMA) произведённые запросы выводятся в оформленном виде.
Все они конспектируются, пишется SQL скрипт.
Далее, пишется Shell скрипт, из которого запускается вышеобозначенный, а так же, производится копирование, перемещение файлов и директорий. Из него же запускается PHP скрипт в CLI, меняющий тэги путём обработки базы.
Редактирование дампа с помощью SED признал нежизнеспособным в связи с жадными/ленивыми регекспами и сложными экранированиями. По факту, PHP отработал на удивление быстро.
Всё это дело испытывается на тестовом движке, и, в случае успеха, запускается на живом форуме/CMS.
В итоге, сложнейшая операция—миграция проводится за несколько минут, почти не нарушая аптайм. Сообщения не теряются.
Методику рекомендую.
SQL
Выполнить запрос в консоли, подставив названия баз вначале.
...
Выведет таблицу с изменёнными столбцами
сорри, что влез, но как-то у вас сильно сложный запрос. упростил до одного селекта:
'my_db1', 'my_db2' - базы, которые сравниваем, при желании можно сравнивать любое количество баз.
HAVING count(*)<2 - сравниваем две базы
ну и сортировку - по вкусу, кому как удобнее.
Upd: добавил в запрос GROUP_CONCAT() - он нужен если сравнивается больше двух баз. теперь крАсота. :)