Я работаю над созданием веб-сайта с использованием Magento eCommerce. Я установил репозиторий Subversion на сервере для веб-сайта, включая все PHP-файлы Magento, и проверил копию в своей локальной системе с помощью svn / webdav. Я добавил magento в репо и совершил транзакцию. Теперь любая операция svn, даже svn status
или svn commit
, создание списка файлов, чтобы я мог ввести сообщение фиксации, занимает вечность. Я имею в виду более 10 минут, даже если я изменил только один файл. Любые идеи о том, что может быть не так / как устранить неполадки / как исправить / предложения? Спасибо!
Репозиторий svn для Magento очень медленный!
Ответы (2)
Я сам работал с 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. Результаты можно увидеть здесь.
Увидев эти цифры, я думаю, что переключение - ваш лучший доступный вариант в долгосрочной перспективе.
Вся работа с Magento может быть выполнена, не касаясь одного файла ядра, как вы и должны это делать (за исключением, возможно, файлов локали, поскольку их легко объединить).
Я написал сценарий, который позволяет вам разбросать файлы вашего проекта по всему корню установки Magento, не увеличивая сложность управления исходным кодом (и без проверки единого файла ядра Magento). Как это работает? Мягкие ссылки. Фактически вы могли бы сделать то же самое без моего скрипта, создав программные ссылки вручную, но это просто упрощает задачу (развертывание / обновление на активном сервере всегда выполняется одной командой).
Я не уверен в поддержке Windows, он может работать в cygwin, но я не тестировал. Я занимаюсь разработкой в Windows, но запускаю виртуальную машину (VirtualBox) со своим стеком LAMP на ней, разделяя файлы с Windows через Samba, поэтому я запускаю сценарий через командную строку в гостевой системе Linux и редактирую свои файлы с помощью Netbeans через общий ресурс Samba ( и я могу зафиксировать изменения через модуль подрывной деятельности Netbeans).
Дополнительную информацию см. В моем сообщении в блоге: Диспетчер модулей
Перейдите прямо к источнику: Диспетчер модулей (через gist) а>