SVN репо для Magento очень медленный! - PullRequest
1 голос
/ 06 августа 2009

Я работаю над созданием веб-сайта с использованием Magento eCommerce. Я настроил репозиторий Subversion на сервере для веб-сайта, включая все PHP-файлы Magento, и извлек копию в мою локальную систему, используя svn / webdav. Я добавил magento в репо и совершил. Теперь любая операция SVN, даже svn status или svn commit, создающая список файлов, чтобы я мог ввести сообщение коммита, занимает навсегда . Я имею в виду более 10 минут, даже если я изменил только один файл. Любые идеи о том, что может быть не так / как устранить неполадки / как исправить / предложения? Спасибо!

Ответы [ 2 ]

6 голосов
/ 06 августа 2009

Я работал с Magento + SVN (но не с WebDAV), и у меня до сих пор не было таких проблем. Для внесения изменений в хранилище требуется много времени (как в течение 2 минут), но не более 5 минут.

Я действительно не знаю причину вашей проблемы, я просто более или менее хотел сказать, что это обычно не так (или что это может быть ошибка WebDAV).

Обходной путь 1:

Предполагая, что вы не будете вносить изменения в ядро ​​Magento, вы рассматривали возможность создания версий только тех частей вашей установки Magento, которые вы измените? то есть папка app / code / local, в которой будут находиться ваши модули, и, возможно, папка вашего шаблона. Это резко сократит общее количество версионных файлов / папок и тем самым значительно увеличит скорость синхронизации.

Обходной путь 2:

Всегда фиксируйте только самую нижнюю папку, содержащую все обновления.

cd app/code 
svn commit -m ".." local

Обходной путь 3:

Аналогично номеру 1: попробуйте добавить все, что не нужно хранить в репо, в список игнорируемых. Такие вещи, как папка var / , не требуют контроля версий и содержат много файлов, поэтому было бы неплохо не включать их в свой репозиторий.

Обходной путь 4:

Используйте git вместо SVN, если это вариант для вас.

eZ Компоненты имели те же проблемы с SVN + WebDAV, и кто-то сравнивал время проверки между SVN + DAV и git. Результаты можно увидеть здесь .

После просмотра этих цифр, я думаю, что переключение - ваш лучший доступный вариант в долгосрочной перспективе.

1 голос
/ 17 октября 2009

Вся работа с Magento может быть выполнена без прикосновения к одному базовому файлу, как вы должны это делать (за исключением, возможно, файлов локали, поскольку их легко объединить).

Я написал скрипт, который позволяет разбрасывать файлы проекта по всему установочному корню Magento, не увеличивая сложность управления исходным кодом (и без проверки в одном основном файле Magento). Как это работает? Мягкие ссылки. На самом деле вы можете сделать то же самое без моего сценария, создавая мягкие ссылки вручную, но это только упрощает (развертывание / обновление на работающем сервере всегда одна команда).

Я не уверен в поддержке Windows, она может работать в Cygwin, но я не тестировал. Я занимаюсь разработкой под Windows, но запускаю виртуальную машину (VirtualBox) со своим стеком LAMP, разделяя файлы с Windows через Samba, поэтому я запускаю скрипт через командную строку на гостевой системе Linux и редактирую свои файлы с Netbeans через общий ресурс Samba ( и я могу зафиксировать изменения через модуль Subversion Netbeans).

См. Мой блог для получения дополнительной информации: Диспетчер модулей
Идите прямо к источнику: Диспетчер модулей (через gist)

...