Автоматически экспортировать содержимое хранилища SVN в другой каталог?

Во-первых, я хотел бы прояснить небольшой вопрос, который у меня есть, правильно ли я считаю, что файлы в SVN-репо на самом деле не существуют в иерархической структуре, которую вы видите, когда проверяете их?

Я пытался использовать svn export ~/svn/project1 ~/public_html/project1 но это не сработало.

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

2 ответа

Решение

Правильно ли я считаю, что файлы в SVN-репо на самом деле не существуют в иерархической структуре, которую вы видите, когда проверяете их

Правильно... они на самом деле существуют в своего рода БД в каталоге хранилища. Однако вы можете вызвать svn-экспорт для рабочей копии или URL-адреса хранилища. Допустим, ваш репо находится в системе на /svn/myproject и у вас есть рабочая копия trunk в ~/myproject тогда любая из следующих командных комбинаций будет экспортироваться правильно:

svn export --force ~/myproject ~/public_html

svn export --force file:///svn/myproject/trunk ~/public_html

Конечно, вы можете заменить svn, http, или же svn+ssh для file протокол в зависимости от того, как ваш доступ настроен.

Да; см. где мои файлы SVN?

Автоматический экспорт может быть выполнен с помощью хука post-commit.

Другие вопросы по тегам