Doğma Git proksidən keçir, JGit isə keçmir
JGit öz dəstəklənən ötürmə parametrləri olan Java tətbiqidir. Doğma Git http.proxy qeydi hər Git müştərisi üçün universal konfiqurasiya deyil.
Eyni repozitoriya terminalda git clone ilə işləyir, JGit istifadə edən tətbiqdə isə uğursuz olur. Bu, iki tətbiq arasında müqayisədir, mütləq eyni müştərinin işlək və pozulmuş nüsxəsi arasında deyil.
JGit konfiqurasiya arayışı deyir ki, proksi konfiqurasiyası Java-nın standart mexanizmlərindən java.net.ProxySelector vasitəsilə istifadə edir. Yalnız hər iki müştəri Git konfiqurasiya faylını başa düşdüyü üçün doğma Git-in bütün HTTP seçimlərinin tətbiq olunduğunu düşünməyin.
JGit-i daxil edən tətbiqi, onun versiyasını və seçilmiş HTTP ötürməsini müəyyənləşdirin. Host tətbiq JGit-in müstəqil defoltlarından artıq parametrlər və ya davranış təqdim edə bilər.
Sonra həmin prosesə görünən Java proksi konfiqurasiyasını yoxlayın. URLConnection əsaslı HTTP ötürməsi üçün istifadə etdiyi JVM host və port xassələrini yoxlayın. Tətbiq başladıqdan sonra əlaqəsiz terminalda daxil edilən xassə işləyən JVM-i yenidən konfiqurasiya edə bilməz. IDE-nin doğma Git əməliyyatı və JGit əməliyyatı da fərqli yollar istifadə edə bilər.
Proksi autentifikasiyasını marşrut seçimindən ayrı saxlayın. Host və portu müəyyən edən Java proksi xassələri avtomatik proksi parol sxemi tətbiq etmir. Tətbiqin dəstəklənən autentifikasiya mexanizmindən istifadə edin.
Faydalı sual “bu JGit sorğusu hansı proksini seçdi?”dir, “Git konfiqurasiyamda proksi sətri var?” deyil. Doğma Git uğuru dəyərli müqayisədir, lakin bu tətbiqə xas suala cavab vermir.