Clean .svn folders

Свого часу я дуже необережно оновив двіг Кукорами до нестабільної версії LS з trunk’у. Для мене це вилилось в купу часу затраченного на багфікси (так склалось, що відкотитись було неможливо), а для LS в халявні багфікси :). З того часу в директорії /var/www/my/cookorama.net з’явилися три піддерикторії “source”, “source-with-ls-svn”, “source-without-ls-svn”.

Апдейт до нової версії LS виглядає наступним чином:

  • Апдейчу з транка LS сорси в “source-with-ls-svn”.
  • Розрулюю конфлікти в конфізі і можливо мержу свої багфікси з їхніми.
  • Перекидаю DocumentRoot на “source-with-ls-svn” і дивлюся чи все працює.
  • Переношу все це діло в “source-without-ls-svn” і тру всі папочки .svn
    find . -depth -type d -name '.svn' -execdir rm -rf '{}' \;
  • Накочую вміст “source-without-ls-svn” на “source” і перевіряю зміни в конфізі, шаблонах і мовних файлах.
  • Тестую Кукораму на локальній машині і якщо все ок, то комічу (Кукорама лежить в окремому репозиторії) і апдейчу продакшн.

6 thoughts on “Clean .svn folders

  1. Привіт, Фалк!

    Мушу сказати, що svn export некошерно навіть на продашні. Ось шматок синхронізації робочої копії з директорією, на яку дивиться веб-сервер:

    rsync -rcvv –delete –exclude=.svn $source-with-ls-svn $source-without-ls-svn

    Найближчим часом опишу в блозі весь механізм апдейтів, синхронізації на тестових, девелоперських на продакшні.

    • якраз експорт кошерно :). rsync з однієї Unix машини зручно робити. а якщо над сайтом кілька людей працює і не тільки з під *nix, то може вилізти трохи боком.

  2. Спасибо :) Сначала читал “в оригинале”, вроде вполне понятно. Насчет “обновления”.. так и не понял, почему не получилось “откатиться” – не было ни резервных копий движка, ни SVN?

    • после обновления изменилась структура базы данных и некоторое время она наполнялась в новой структуре.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>