Mercurial управляет несколькими репозиториями - PullRequest
3 голосов
/ 21 января 2011

У нас есть хранилище myproject - поскольку репо почти готово к выпуску, мы создаем myproject-1_0. Версия 2 dev будет продолжена в myproject, в то время как незначительные исправления и исправления ошибок будут в myproject-1_0. Как лучше всего объединить myproject-1_0 изменения в myproject?

Это лучший подход:

$ cd myproject
$ hg pull ../myproject-1_0
$ hg merge
$ hg commit -m 'Merge bugfix from 1.0 branch'
$ hg push

Что бы произошло, если бы мы сделали это слияние 1 февраля, а затем внесли больше изменений в myproject-1_0? Будем ли мы повторять шаги снова, и hg pull ../myproject-1_0 просто извлечет наборы изменений, выполненные после извлечения 1 февраля?

В репо myproject есть ли способ сделать hg log и определить, какие наборы произошли от myproject-1_0, а какие от myproject?

Есть ли другие рекомендации по этому общему подходу?

Ответы [ 2 ]

6 голосов
/ 21 января 2011

Вопросы в последовательности:

  • Это лучший подход? - да , если вы не хотите использовать именованные ветви и хранить все в одном хранилище
  • просто вытащил бы изменения, сделанные после 1 февраля? - да
  • есть ли способ сделать hg log и определить, какие наборы изменений пришли из myproject-1_0? - нет

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

4 голосов
/ 21 января 2011

Так вот, для чего предназначен Mercurial

Я бы посоветовал взглянуть на http://www.hginit.com. Но то, что вы спрашиваете, если когда вы извлекаете изменения, оно будет тянуть только те изменения, которые произошли с момента последнего нажатия, да Вы не можете сказать, какие наборы изменений произошли от другого клона, но только имена пользователей отслеживаются в идее, о которой вы думаете.

Если вы хотите знать, откуда что происходит, это то, что вы можете сделать в сообщениях коммитов.

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