Назад | Перейти на главную страницу

Коммит SVN не обновляет файлы на сервере

Я следил за этим руководством http://wiki.centos.org/HowTos/Subversion и все работало до версии 5.3 (я могу проверить файлы).

У меня был существующий каталог «/ var / www / file-manager». Этот каталог сопоставлен с виртуальным хостом (т.е. это действующий веб-сайт, к которому я могу получить доступ через URL-адрес). Я добавил этот каталог в SVN (используя командную строку сервера).

svn import /var/www/file-manager file:///var/www/svn/repos/mytestproj -m "Initial repository layout for mytestproj"

Я успешно проверил весь каталог, используя черепаховый SVN (я использовал "http://svn.example.com/repos", чтобы получить файлы). Я изменил один из файлов php и зафиксировал его обратно, используя параметр фиксации. Это обновило номер версии и, похоже, сработало. Я зашел в / var / www / file-manager и открыл файл i только что изменен, но изменений не было. По словам черепахи, файл обновлен на сервере, но файл на сервере нет. Есть идеи, что здесь происходит?

В конце концов я хочу использовать это для всего веб-сайта (который значительно больше), поэтому я хочу выяснить, что не так, прежде чем я это сделаю. Этот каталог существовал до того, как я установил SVN

An svn import не превращает импортированную вами папку в рабочую копию. Вам нужно будет выполнить еще одну проверку /var/www/file-manager а затем сделайте svn update на нем, чтобы увидеть изменения из других ваших коммитов.

Subversion не обновляет автоматически другие рабочие копии. Вам необходимо вручную обновить эти рабочие копии, чтобы увидеть внесенные вами изменения.

Это сделано специально. Вы же не хотите, чтобы ваша производственная система обновлялась каждый раз, когда вы случайно фиксируете код с критической ошибкой.

Кроме того, если вы собираетесь размещать свой веб-сайт из рабочей копии SVN, вам нужно добавить .htaccess правила, запрещающие посетителям ковыряться в .svn папки. Или, что еще лучше, не запускайте свой сайт с рабочей копии. Иметь скрипт обновления с рабочей копией где-нибудь ещесделать svn update на этом, а затем svn export из рабочей копии на ваш действующий сайт.