2015-11-17 10 views
1

В мерзавца, если вы настроили два удаленных репозиториев default и other, и они оба содержат cool-feature ветвь, но они не синхронизированы, вы можете иметь что-то вроде этого:Как проверить ревизию ртути из другого хранилища?

* <--- HEAD, cool-feature, default/cool-feature 
| 
| 
o another commit 
| 
| 
o commit for awesome 
| 
| 
o <--- other/cool-feature 
| 
. 
. 
. 

Я могу прыгать туда и обратно делая git checkout other/cool-feature и git checkout default/cool-feature.

Как сделать эквивалент в Mercurial? Возможно ли это?

ответ

1

Если вы используете закладки эмулировать ветви Git и вы тянете из двух хранилищ, где расходились закладки, то один из них будет помечен как [email protected], где name этим название закладки и repo является либо идентификатором в [paths] секции .hg/hgrc или уникальный идентификатор, когда такой записи нет.

Однако, если закладки не расходятся, но одна ревизия является предком другой, тогда вы получите только самую последнюю. Вы все еще можете индивидуально получить закладки из удаленных хранилищ через:

hg pull -B name repo1 
hg update name 

, а затем:

hg pull -B name repo2 
hg update name 

В качестве альтернативы, вы можете также использовать hg id, чтобы выяснить, какие узлы удаленные закладки соответствуют:

hg update -r $(hg id -i -r name repo1) 

или:

hg update -r $(hg id -i -r name repo2) 

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

Если это то, что вам нужно часто, вы можете рассмотреть remotenames extension. Предупреждение: это расширение существенно изменяет обычное поведение закладок (на самом деле это намного больше похоже на Git-like).

+0

Расширение Remotenames, из моего POV, слишком экстремальное для задачи. [Удаленные ветви] (https://www.mercurial-scm.org/wiki/RemoteBranchesExtension) (родительские имена удаленных имен) также могут быть в порядке –