Здесь упоминается , что это обычно проблема с файлами в Windows.
Одним из возможных решений будет запуск файла с помощью инструмента, такого как dos2unix.
На самом деле, патч был отправлен в апреле 2009 г. для уточнения роли gitmodule
.
Итак, теперь gitmodule документация еще не включает:
Файл
.gitmodules
, расположенный в каталоге верхнего уровня рабочего дерева git, представляет собой текстовый файл с синтаксисом, соответствующим требованиям -of linkgit: git-config 1 .
[НОВОЕ]:
Поскольку этим файлом управляет Git, он отслеживает + записи подмодулей проекта.
Информация, хранящаяся в этом файле, используется в качестве подсказки для запуска авторитетной версии записи, хранящейся в файле конфигурации проекта.
Пользовательские изменения записей (например, для учета различий в URL-адресах подмодулей из-за сетевых ситуаций) должны быть внесены в файл конфигурации, в то время как изменения записи, которые должны быть распространены (например, + из-за перемещения источника подмодуля), должны быть сделаны в этот файл.
Это в значительной степени подтверждает ответ Джима .
Если вы последуете этому руководству по подмодулю git , вы увидите, что вам нужен " git submodule init
"для добавления URL-адресов репозитория подмодулей в .git / config.
" git submodule sync
" был добавлен в августе 2008 года именно для облегчения этой задачи при изменении URL (особенно, если важно количество подмодулей).
Связанный с этой командой сценарий достаточно прост:
module_list "$@" |
while read mode sha1 stage path
do
name=$(module_name "$path")
url=$(git config -f .gitmodules --get submodule."$name".url)
if test -e "$path"/.git
then
(
unset GIT_DIR
cd "$path"
remote=$(get_default_remote)
say "Synchronizing submodule url for '$name'"
git config remote."$remote".url "$url"
)
fi
done
Цель остается: git config remote. "$ Remote" .url "$ url"
Вы должны просто уметь отредактировать файл .gitmodules
для обновления URL-адреса и затем запустить git submodule sync
, чтобы отразить это изменение в суперпроекте и вашей рабочей копии.
Просто отредактируйте файл .git / config . Например; если у вас есть подмодуль "common" , вы можете сделать это в супер-модуле:
git config submodule.common.url /data/my_local_common