Mercurial поддерживает субпозитории различных видов: Mercurial, Subversion и Git. Таким образом, вы можете создать .hgsub
файл с
utils/external/firepython = [git]git://github.com/darwin/firepython.git
utils/external/textile = [git]git://github.com/jsamsa/python-textile.git
, и это сообщит Mercurial о создании клона ваших репозиториев Git при клонировании репозитория Mercurial. Вам нужно сделать клоны Git самостоятельно или скопировать их из другого места на вашем диске:
$ git clone git://github.com/darwin/firepython.git utils/external/firepython
$ git clone git://github.com/jsamsa/python-textile.git utils/external/textile
$ hg add .hgsub
$ hg commit -m 'Added Git subrepositories'
Затем вы заметите, что Mercurial добавил файл .hgsubstate
в ваш репозиторий, где он хранит информацию о подкаталогах Git. Этот файл необходим для того, чтобы Mercurial знал, какую ревизию следует извлечь из ваших подпапок, когда вы создаете новый клон Mercurial.
Мой коллега написал руководство по субпозитарию , которое может оказаться полезным.