проект GitHub с субмодулями клонирования Capistrano - PullRequest
8 голосов
/ 29 ноября 2011

Я пытаюсь создать сценарий capistrano deplyoment для проекта git, который имеет подмодуль.

Я запускаю эти команды

run "git clone git@github.com:GITPROJECT /var/www/myfolder"

, когда я запускаю этот подмодуль, он не будет клонироваться в / var / www / myfolder, вместо этого он только создает пустую папку с именем подмодуля

когда я пытаюсь запустить его, он тоже не будет работать

run "cd /var/www/myfolder/submodule && git pull master"

Может кто-нибудь помочь мне с этим, пожалуйста?

1 Ответ

18 голосов
/ 29 ноября 2011

В основном вам нужен параметр

set :git_enable_submodules, 1

в вашем скрипте deploy.rb.Он сообщает Capistrano, что нужно инициировать и обновлять подмодули git после извлечения источника из основного репозитория.Если по какой-то причине вы хотите сделать это вручную, вы можете запустить его из корневого каталога вашего проекта:

git submodule update --init

, хотя, если я правильно помню, --init недоступен в некоторых старых версиях gitтак что если он не работает, вы можете сделать это так:

git submodule init && git submodule update

Посмотрите на этот ответ для более подробного объяснения опций git для capistrano.

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