Вторник, 8 Июль 2008
Mercurial: запоминаем состояние леса
В одно прекрасное утро мы начили использовать расшерение для mercurial которое называется forest. Спуся какое-то время захотелось нам стабилизироваться.
Нет, это оказалось не сложно. Но не очевидно. И решение это мне не нравится, но более интересного я найти не могу. В общем не git submodules, но жить можно:
Идея состоит в создание snapshot всего дерева. Делается он так:
hg fsnap
На выход мы получим
[tree1]
root = .
revision = 598d5d698bf7c12c8c180195883ecb5a6c4f3cb8
path.default = ssh://server//path/to/root
[tree2]
root = lib
revision = 98fcae82bd24a35afb4f241513681323546df005
path.default = ssh://server//path/to/lib
Теперь, если мы зайдем в lib и откатим ее, скажем до ревизии/тега/ветки то мы сможем получить новый файл snapshot’а. Например
cd lib
hg up -C stable
cd ../
hg fsnap
[tree1]
root = .
revision = 598d5d698bf7c12c8c180195883ecb5a6c4f3cb8
path.default = ssh://server//path/to/root
[tree2]
root = lib
revision = dd075131407222eb23c95661fc32866f4bfed5a5
path.default = ssh://server//path/to/lib
Далее мы можем записать снапшот в файл:
hg fsnap > snapshot.txt
И потом можем через fpull откатиться к snapshot:
hg fpull snapshot.txt .
Комментарии
Форма комментирования для «Mercurial: запоминаем состояние леса»