Базар оффлайн + филиалы - PullRequest
       13

Базар оффлайн + филиалы

0 голосов
/ 07 августа 2009

У меня есть хранилище Bazaar на хосте A с несколькими ветвями. Это мой основной репозиторий.

До сих пор я делал проверки на других своих машинах и фиксировал непосредственно в главном хранилище. Однако теперь я объединяю всю свою работу с ноутбуком и несколькими виртуальными машинами. Мне нужно регулярно работать в автономном режиме. В частности, мне нужно создавать / удалять / объединять ветки в автономном режиме.

Я думал о том, чтобы продолжать иметь мастера на хосте A с клоном хранилища на ноутбуке, когда каждый vms выполняет проверки клона.

Затем, когда я выхожу в автономный режим, я могу выполнить bzr unbind для клона и bzr bind, когда вернусь в онлайн.

Это не удалось, как только я попытался клонировать bzr, поскольку клон bzr только клонирует ветку (!!!!)

Мне нужна серьезная помощь. Если Hg справится с этим лучше, пожалуйста, дайте мне знать (мне нужна поддержка Windows). Однако в данный момент я не могу переключиться с Bazaar, поскольку он слишком близок к некоторым важным срокам.

Заранее спасибо!

1 Ответ

0 голосов
/ 07 августа 2009

bzr в основном работает с одной веткой / каталогом (ветка видна на уровне файловой системы), поэтому, если вам нужно клонировать каждую ветку из вашего хранилища (в некотором смысле, в отличие от svn) Hg на базовом уровне тоже работает таким образом (хотя вы можете поместить несколько веток в один репозиторий, используя, скажем, именованные ветви).

Для DVCS важно различать следующее:

  • Рабочее дерево: версионный набор файлов (с заданной ревизией)
  • Ветвь: линейный набор ревизий
  • Репозиторий: набор ревизий

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

Что вы хотите, IIUC, это клонировать полный репозиторий со всеми ветвями. Я полагаю, что в bzr нет «родного» способа сделать это, но есть плагины, которые помогут вам в этом, например, multi-pull и push-repo, для синхронизации нескольких веток за один снимок.

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

...