Успешно клонирање на главното складиште не ги тестира неговите подмодули. Подмодулот е друго Git-складиште, можеби на друг хост и со друг транспорт.

Почнете со читање на декларираните URL-адреси:

git -C project config --file .gitmodules --get-regexp '^submodule\..*\.url$'
git -C project submodule status --recursive

Родител преземен преку HTTPS може да содржи подмодул што користи git@host:. HTTP-прокси поставка не ја конфигурира таа SSH-врска. Релативните URL-адреси треба да се разрешат според соодветниот remote на надредениот проект, а не според веб-адреса претпоставена од името на проектот.

Локалните поставки имаат опсег

Локалниот запис http.proxy му припаѓа на складиштето чија конфигурациска датотека го содржи. Не претпоставувајте дека проверката само на родителот ги покажува сите ефективни поставки во иницијализирано дете.

За привремено задавање HTTPS-прокси при рекурзивно ажурирање, може да се даде Git-конфигурација од командната линија за тој повик:

git -C project -c http.proxy=http://203.0.113.10:8080 \
  submodule update --init --recursive

Заменете ја примерната крајна точка. За јавни HTTPS-подмодули на патека што дозволува јавни проксија, листата на HTTP-проксија нуди кандидатски адреси. Ова не ги претвора SSH-адресите во HTTPS; при неочекувана патека проверете и поконкретна URL-конфигурација.

Кога се сменила регистрираната URL-адреса

Git локално ја регистрира конфигурацијата на подмодулот при иницијализација. Ако адресата во проектот се сменила, споредете ја тековната декларација со локално регистрираната вредност пред да заклучите дека проксито не работи. Документираната операција sync ги ажурира адресите од декларацијата; самата не е поставка за мрежно прокси.

При вгнездени грешки забележете ја точната патека и remote од пораката. Рекурзивна операција може да контактира повеќе хостови; внатрешен хост може да бара директен исклучок додека јавен користи прокси.

Раздвојте транспортни грешки од грешки на складиштето. Недостапен commit, одбиен пристап и неуспешна врска со прокси се различни причини за истиот општ резултат „submodule update failed“.

Поврзани статии