Vel heppnuð klónun aðalgeymslu prófar ekki undireiningarnar. Undireining er önnur Git-geymsla, hugsanlega á öðrum hýsil og með öðrum flutningi.

Byrjaðu á að lesa tilgreindar slóðir:

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

Foreldrageymsla sem sótt er yfir HTTPS getur innihaldið undireiningu með git@host:. HTTP-proxy stilling stillir ekki þá SSH-tengingu. Hlutfallslegar slóðir undireininga þarf einnig að leysa miðað við rétt remote yfirverkefnisins, ekki vefslóð sem þú áætlaðir út frá verkefnisheitinu.

Staðbundnar geymslustillingar hafa umfang

Staðbundin http.proxy-færsla tilheyrir geymslunni sem inniheldur hana í stillingaskránni. Ekki gera ráð fyrir að skoðun foreldrisins ein og sér sýni allar virkar stillingar í frumstilltri undirgeymslu.

Til að stilla HTTPS-proxy tímabundið við endurkvæma uppfærslu skaltu gefa Git-stillingu á skipanalínu í það kall:

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

Skiptu út dæmiendapunktinum. Fyrir opinberar HTTPS-undireiningar þar sem opinber proxy er leyfður gefur HTTP-proxylistinn möguleg vistföng. Þetta breytir ekki SSH-slóðum í HTTPS; skoðaðu nákvæmari URL-stillingu ef leiðin kemur á óvart.

Þegar skráða slóðin breytist

Git skráir stillingar undireiningar staðbundið við frumstillingu. Berðu núverandi tilgreiningu saman við staðbundið gildi áður en þú kennir proxy um. sync-aðgerðin uppfærir skráðar slóðir úr verkefnislýsingunni; hún er ekki netproxy-stilling sjálf.

Við hreiðraðar bilanir skaltu skrá nákvæma leið undireiningar og remote úr villunni. Endurkvæm aðgerð getur haft samband við marga hýsla; innri hýsil gæti þurft beina undanþágu meðan opinber hýsil notar proxy.

Haltu flutningsvillum aðskildum frá geymsluvillum. Ófáanlegt commit, aðgangur hafnað af geymslu og misheppnuð proxy-tenging eru ólíkar ástæður fyrir sömu almennu niðurstöðu „submodule update failed“.

Tengdir greinar