Я пытался создать проект, используя битбакет, у которого есть зависимости проекта, размещенные на github. Используя плагин Hg-Git Mercurial, я почти добираюсь до этого.
Но когда приходит время продвигаться, все становится неприятно.
В документации для Mercurial subrepositories говорится:
2.4 Push
Mercurial автоматически попытается сначала отправить все вложенные репозитории текущего репозитория при нажатии. Это обеспечит доступность новых наборов изменений в подрепозиториях при обращении к ним из репозиториев верхнего уровня.
Но это вызывает большую проблему, так как я не хочу размещать все подрепозитории (зачем мне это?) - у меня есть доступ только для чтения к ним, поэтому github не позволит этого. На удаленный сервер нужно отправить только основной репозиторий, но я не могу понять, как это сделать. hg
хочет взять на себя управление и продвигать все субхранилища, независимо от того, есть ли изменения или нет. Есть ли способ обойти эту функцию ?
Единственные вещи, которые нужно отправить, - это .hgsub
и .hgsubstate
. После того, как они были отправлены через альтернативные маршруты (обновление до набора изменений, в котором не существует подрепозиториев), можно будет затем обновить и извлечь изменения из удаленных репозиториев, но если бы я снова отправил изменения, находясь в наборе изменений с подхранилища, все испытания повторяются.