Prokura vojigo por Git-submoduloj
Kontrolu URL-ojn de submoduloj, transportojn kaj deponejajn agordojn kiam la ĉefa Git-deponejo funkcias tra prokurilo sed ĝiaj idoj ne.
Sukcesa klonado de la ĉefa deponejo ne testas ĝiajn submodulojn. Submodulo estas alia Git-deponejo, eble ĉe alia gastiganto kaj kun alia transporto.
Komencu per legado de la deklaritaj URL-oj:
git -C project config --file .gitmodules --get-regexp '^submodule\..*\.url$'
git -C project submodule status --recursive
Gepatra deponejo akirita per HTTPS povas enhavi submodulon uzantan git@host:. Agordo de HTTP-prokurilo ne agordas tiun SSH-konekton. Relativaj submodulaj URL-oj ankaŭ devas esti solvitaj rilate al la konvena fora deponejo de la superprojekto, ne al iu retadreso supozita el la projektnomo.
Deponej-lokaj agordoj havas amplekson
Loka ero http.proxy apartenas al la deponejo kies agorddosiero ĝin enhavas. Ne supozu, ke kontrolante nur la gepatron vi ekscias ĉiujn efektivajn agordojn ene de pravalorizita ida deponejo.
Por provizore superregi la HTTPS-prokurilon dum rekursia ĝisdatigo, vi povas doni komandlinian Git-agordon al tiu alvoko:
git -C project -c http.proxy=http://203.0.113.10:8080 \
submodule update --init --recursive
Anstataŭigu la ekzemplan finpunkton. Por publikaj HTTPS-submoduloj sur vojo permesanta publikajn prokurilojn, la listo de HTTP-prokuriloj liveras kandidatajn adresojn. Tio ne konvertas SSH-submodulajn URL-ojn al HTTPS; se la elektita vojo surprizas, kontrolu ankaŭ pli specifan URL-bazitan agordon.
Kiam la registrita URL ŝanĝiĝis
Git registras submodulan agordon loke dum pravalorizo. Se la projekta URL de submodulo ŝanĝiĝis, komparu la nunan deklaron kun la loke registrita valoro antaŭ ol decidi, ke prokurilo ne funkcias. La dokumentita operacio sync ĝisdatigas registritajn URL-ojn el la projekta deklaro; ĝi mem ne estas retprokura agordo.
Ĉe nestitaj malsukcesoj notu la precizan submodulan vojon kaj foran deponejon nomitajn en la eraro. Rekursia operacio povas kontakti plurajn gastigantojn; interna gastiganto eble bezonas rektan escepton dum publika uzas la prokurilon.
Apartigu transportajn erarojn de deponejaj eraroj. Nehavebla commit, aliro rifuzita de la deponejo kaj malsukcesa konekto al la prokurilo estas malsamaj kialoj de la sama ĝenerala rezulto “submodule update failed”.