Пометка только под-репозитория - PullRequest
2 голосов
/ 28 апреля 2011

У меня есть главный репозиторий Mercurial с одним под-репозиторием, например:

Main
  .hg
  .hgsub
  .hgsubstate
  <some_regular_files_and_subdirs>
  Sub
    .hg
    <some_regular_files_and_subdirs>

И я хочу пометить только Sub, сохраняя Main/.hgsubstate в актуальном состояниит. е. указать на набор изменений Sub, являющийся результатом процесса тегирования).
Я не хочу отмечать основной репозиторий.
Возможно ли это без тегирования из Sub и выполнить какое-то волшебствоMain/.hgsubstate в курсе?

Ответы [ 2 ]

1 голос
/ 28 апреля 2011

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

из командной строки:

(navigate to subrepo directory)
> hg tag <tagName>
(navigate to main repo directory)
> hg commit -m "updating to subrepo tag <tagName>"

После того, как вы создали тег subrepo и обновили subrepo для этого тега, выполнение фиксации с верхнего уровня (то есть: Main) должно обновить .hgsubstate и не требует, чтобы вы пометили репо Main.Фактически, изменение ревизии любого подотчета должно вызвать изменение в файле .hgsubstate, которое можно зафиксировать в основном репо без тега.

0 голосов
/ 28 апреля 2011

Что-то вроде ниже?

hg -R Sub tag tagname
hg -R Sub commit -m "Comitting tag"
...