Я прочитал все вопросы о суб-репозиториях Mercurial, которые мог, но до сих пор не знаю, как это работает. Мы используем hgweb.cgi в IIS, поэтому у нас есть пути http: // ко всем нашим репозиториям.
Вот базовый макет:
/Libraries - http://server/Libraries
/Project1 - http://server/Project1
/Project1/LibrariesSubrepo - http://server/Project1/LibrariesSubrepo (clone of libraries)
/Project2 - http://server/Project1
/Project2/LibrariesSubrepo - http://server/Project2/LibrariesSubrepo (clone of libraries)
В файлах .hgsub у меня установлен путь как:
LibrariesSubrepo = LibrariesSubrepo
Если я хочу работать над проектами, я клонирую их с сервера на свою рабочую станцию, поэтому у меня есть клон Project1 и Project2, и он также автоматически извлекает вложенные репозитории.
В проекте project1 на моей локальной рабочей станции я вношу некоторые изменения в файлы в папке / Project1 / LibrariesSubrepo. Как мне убедиться, что эти изменения вернутся в исходное репо для библиотек на сервере? Должен ли я вручную передавать изменения из субрепо в исходный репо субрепо?
Я хотел бы иметь возможность вносить изменения в репозиторий Project1 локально, затем фиксировать / нажимать эти изменения, а затем в Project2 я смогу вытащить изменения с сервера, который должен обновить Project2 / LibrariesSubrepo до последней версии.