Перемещение хранилища Subversion в автономном режиме на ноутбуке, а затем синхронизация с сервером SVN по возвращении - PullRequest
2 голосов
/ 18 августа 2011

Я собираюсь путешествовать без доступа к сети (т.е. не могу получить доступ к серверу Subversion в нашем центре обработки данных). У меня установлена ​​последняя версия хранилища Subversion на моем ноутбуке, и я буду работать над проектом, пока меня не будет в офисе. Я хотел бы:

  1. Есть сервер Subversion для проверки, возврата, истории и т. Д., Пока я путешествую. Это должно быть установлено на ноутбуке, очевидно. При необходимости я могу получить резервную копию репозитория SVN.

  2. Проверьте все изменения (и, надеюсь, историю), как только у меня снова будет доступ.

Я счастлив использовать любую технологию (svn, git, hg) на ноутбуке, но конечный сервер - это подрывная деятельность.

Я читал некоторые другие (более старые) сообщения, включая приведенные ниже, но не ясно, можно ли добавить историю / все отдельные коммиты / версии обратно на сервер в центре данных:

контроль источника вне офиса

Subversion Proxy для работы в автономном режиме?

http://www.aidanf.net/archive/blog/2007/12/10/using-git-offline-commits-subversion-repository

Ответы [ 3 ]

3 голосов
/ 18 августа 2011

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

Недостатком является то, что вам также нужно изучать git и выбирать, что синхронизировать, синхронизация не автоматическая.С другой стороны, у вас есть локальная гибкость и мощь, которую вы не можете получить только через svn.

0 голосов
/ 19 августа 2011

Установите локальный сервер SVN на вашем ноутбуке и держите ваши источники там. Это не создает большую рабочую нагрузку. Когда вы не в офисе, зафиксируйте изменения на локальном сервере. Когда вы подключитесь к сети, получите дамп своего локального репозитория и загрузите его на свой сервер. Затем вы можете объединить ваши изменения в основной строке.

p.s. это не слишком удобно, но сохраняет ваши изменения, когда сервер недоступен.

0 голосов
/ 18 августа 2011

Я не думаю, что то, чего вы хотите достичь, возможно, потому что, если у многих людей есть локальные копии репозитория, каждая копия будет развиваться в соответствии с их собственными изменениями. История патчей / коммитов будет другой. Истории не обязательно должны быть совместимы, точно так же, как патчи иногда вызывают конфликты.

Я никогда не слышал об инструменте, позволяющем такое согласование между экземплярами хранилища Subversion. Конечно, вы можете хранить копии каждого изменения с помощью патчей и применять их, когда вы снова в сети. Но это утомительно, скучно и больно.

Мой обходной путь для этих ситуаций в автономном режиме - создать 10 проверок на сервере и поработать над каждой из них для каждой проблемы (или набора проблем), которую я решаю. Затем я проверяю их один за другим, когда я снова в сети, и использую функцию обновления, чтобы «синхронизировать» их. Это не идеально, но я считаю, что это хороший обходной путь.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...