Я хочу проверить с зеркала, но зафиксировать мастер без команды svn sw --relocate - PullRequest
2 голосов
/ 11 октября 2011

Я хочу проверить с зеркала, но коммит мастеру без svn sw, это возможно?

С помощью svn sw --relocate я могу сделать это, но я хочу автоматически переключаться с подчиненного на ведущий во время коммитов.Как будет работать svn checkout (Процесс) Может кто-нибудь объяснить это.

Не могу ли я установить целевой или главный IP подчиненного сервера во время извлечения?Есть ли какой-либо сценарий?

Я пытаюсь синхронизировать данные с самого главного сервера, но получаю следующую ошибку:

Warning: post-commit hook failed (exit code 255) with output: Host key verification failed.

Я сохранил команду svnsync sync file:///pwd/proj подчиненного в главном /pathc/proj/hooks/post-commitфайл в конце файла.Я получаю вышеуказанную ошибку, но если я запускаю эту команду в командной строке на главном сервере, она работает нормально.Как я могу решить это?

1 Ответ

0 голосов
/ 20 марта 2013

SVNMasterURI, похоже, является ключевым словом здесь.

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

Используйте apache на зеркале и, конечно, http (s) для доступа к хранилищу от вашего клиента.

Настройте Apache для перенаправления всех команд записи (= commit) на главный svn-сервер. Команды чтения (= обновление и т. Д.) Все еще должны обслуживаться локально.

Похоже, что вы не можете использовать AuthzSVNAccessFile на зеркале с этой настройкой, иначе говорят, что фиксации к мастеру не работают.

В примере, который я видел, был изменен следующий файл: /etc/apache2/mods-enabled/dav_svn.conf

SVNMasterURI https://master.com/repo
AuthType basic
AuthBasicProvider ldap external
AuthExternal master-svn
require valid-user

Примечание: "ldap" и "external" - это просто примеры, где вы можете использовать разные механизмы аутентификации для чтения и записи (= mirror и master). В этом примере ldap использовался на зеркале для команд чтения, внешний использовался вместе с мастером. Дальнейшая конфигурация ldap и конфигурация ExternalAuth здесь опущены.

...