Как добавить подпункт в существующий репозиторий в Mercurial - PullRequest
10 голосов
/ 09 марта 2010

Каков наилучший / самый простой способ (или вообще возможно) добавить существующий репозиторий в другой существующий репозиторий в качестве подпрепарата?

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

Также: нужно ли клонировать / толкать / тянуть исходный проект библиотеки или это делается автоматически при фиксации в основном проекте?

Привет
Джеспер Хауге

Ответы [ 4 ]

7 голосов
/ 09 марта 2010

Документация по подотчетной записи настолько смутила меня, что я написал сценарий оболочки, чтобы абстрагировать эту часть.

addsubrepo.sh

Назовите это как

$ cd $TOP_OF_HG_PROJECT
$ addsubrepo.sh $URL_TO_HG_PROJECT relative_path/you/want_to/put_the_subrepo
2 голосов
/ 09 марта 2010

Чтение документов, плагин subrepo поддерживает эту функцию.

Я еще не использовал его, но, скорее всего, начну его использовать в ближайшем будущем.

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

В соответствии с help , подтягивание, подталкивание, фиксация и т. Д. Также должны воздействовать на подотчет. Похоже, что коммит будет проверять, есть ли какие-либо изменения в подпункте. Если они есть, они будут зафиксированы, и новый набор изменений в подрепортаже будет записан в файле .hgsubstate. Этот файл, а также изменения в основном репо будут зафиксированы.

Когда вы клонируете, Mercurial должен увидеть .hgsubstate, а также файл .hgsub, правильно вытащить вложенный репозиторий и обновить его до нужной версии.

0 голосов
/ 02 октября 2017

Вот как я это сделал:

$ cd /projects/main_project
$ hg clone /projects/plugins/awesome plugins/awesome_plugin
$ echo plugins/awesome_plugin = plugins/awesome_plugin > .hgsub
$ hg add .hgsub
$ hg commit -m "added awesome_plugin plugin as a subp-repo"
0 голосов
/ 09 марта 2010

Возможно, вы захотите использовать расширение deps .

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