Подтвердить что ты не робот

Такая же рабочая копия кода с двумя SVN-серверами

Можно ли использовать ту же рабочую копию и поместить ее на два разных SVN-сервера (commit, update,...)?

4b9b3361

Ответ 2

Да, вы можете использовать команду Relocate (thanks, Peter) для подключения вашей рабочей копии к первому репозиторию, совершить там, а затем переместить во второй репозиторий и зафиксировать там. Лучше сделайте копию папки рабочей копии где-то в другом месте.

Ответ 3

Если несколько человек будут разговаривать с разными серверами svn, у вас возникнут проблемы. Два сервера не будут разговаривать друг с другом, чтобы убедиться, что у них нет конфликтов, используются одни и те же номера версий и т.д. По крайней мере, я не знаю ни одного svn-хака, который это сделает. (Существуют и другие распределенные системы версий, основанные на svn, такие как svk.)

Какая главная цель здесь? Можете ли вы только нажимать на один сервер, но затем иметь привязку после фиксации для репликации изменения на другой сервер, что позволит легко доступ только для чтения из другого места?

Чем больше информации вы можете дать о том, что хотите, тем более вероятно, что мы сможем вам помочь.

Ответ 4

Системы управления распределенной версией, такие как Mercurial, Bazaar или Git, лучше подходят для таких задач. Вы можете вносить изменения в любое количество репозиториев.

Ответ 5

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

В двух случаях я фактически оказался с другим номером ревизии (+1), что означает, что мой следующий svn up стал очень интересным.

Итак, я просто использовал SSHFS (mount FUSE) для редактирования файлов на месте в канадской копии, а затем передал напрямую. Его все еще настоящая боль и одна из многих причин, почему я так сильно люблю Mercurial.

Ответ 6

Сначала проверьте на каждом сервере свой код, а затем создайте script svn_up.sh следующим образом:

ssh  server_one_ip_address svn up /path_to_working_copy_on_server1
ssh  server_two_ip_address svn up /path_to_working_copy_on_server2

Использовать sh svn_up.sh вместо svn up