Сведения о вопросе

Holish

16:03, 1st July, 2020

Теги

Что такое хороший шаблон использования Mercurial для этой установки?

Просмотров: 456   Ответов: 3

У нас есть два разработчика в одной и той же закрытой (тьфу, глупый gov) сети, другой разработчик в паре минут езды по дороге, а четвертый разработчик на полпути через всю страну. Электронная почта, ftp, и удаление media - все возможные способы передачи для людей, не находящихся в одной сети.

Я являюсь одним из двух разработчиков закрытых сетей, считайте нас "master" location.

Что такое лучшая настройка Mercurial / шаблон для группы? Каков наилучший способ trasmit изменения в / из удаленных разработчиков? Поскольку я отвечаю за это, я решил, что мне нужно будет сохранить по крайней мере один мастер-РЕПО с другим локальным РЕПО, в котором я могу развиваться. Каждый другой человек должен просто нуждаться в Клоне мастера. Это правда? Я думаю, это также делает меня ответственным за слияние?

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



  Сведения об ответе

nYU

18:03, 1st July, 2020

Патчи-Это простое и универсальное решение.

Для перемещения по большим группам изменений (особенно двоичных изменений и слияний) Mercurial предлагает бинарные пакеты. A bundle-это в основном двоичный материал, который отправляется по сети, когда вы делаете hg push, но здесь он записывается в файл.

Давайте представим, что я получил клон каким-то образом (на диске flash, DVD и т. д.). Назовем это upstream . Затем я делаю второй клон, называю его devel . Я делаю все свое развитие в devel и делаю много коммитов, слияний и т. д. Поскольку Mercurial распространяется, я могу сделать все это в автономном режиме.

Чтобы увидеть, какие наборы изменений отсутствуют в upstream , я делаю

% hg outgoing ../upstream

Когда у меня есть что-то отправить, я могу использовать

% hg bundle changes.hg ../upstream

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

Получатель bundle может сделать

% hg incoming changes.hg

чтобы просмотреть список наборов изменений и

% hg pull changes.hg

чтобы распаковать и добавить наборы изменений в свой репозиторий. Затем ему, скорее всего, придется слиться-это точно так же, как если бы он вытащил непосредственно из вашего репозитория через HTTP или SSH.

Обратите внимание, что репозиторий upstream используется только как удобный способ запомнить, какие наборы изменений уже найдены в вышестоящем репозитории. Вы также можете просто записать набор изменений ID и использовать hg bundle --base при связывании, чтобы указать базовый (общий) набор изменений. Смотрите hg help bundle или смотрите в wiki .


  Сведения об ответе

PROGA

18:03, 1st July, 2020

Пользователи вне сети могут создавать патчи и / или использовать email для отправки обновлений в основное РЕПО или кому-то, например вам, чтобы объединить их. Другие внутренние люди могут иметь локальные копии, как и вы, и делать слияния-но если у вас есть эти патчи из сети, возможно, лучше, чтобы один человек имел с ними дело, чтобы никто не запутался, но это то, что вы должны были бы рассмотреть сами.

Синхронизируя другой способ, вы создадите патч, и их email или получите диск flash для удаленных разработчиков, чтобы исправить свою систему. Вам понадобится хорошая коммуникация в команде, я благодарен, что я не на вашем месте.

Это мои единственные предложения-ну, очевидные, соедините их с VPN! Я хотел бы услышать, как это происходит, какие планы стабилизируются в еженедельной канавке и так далее.


  Сведения об ответе

9090

18:03, 1st July, 2020

Правильный. Единственный способ попасть в закрытую сеть-это использовать диск flash.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться