To isté úložisko funguje s git clone v termináli a zlyháva v aplikácii používajúcej JGit. Je to porovnanie dvoch implementácií, nie nevyhnutne funkčnej a pokazenej kópie toho istého klienta.

Referenčná príručka konfigurácie JGit uvádza, že konfigurácia proxy používa štandardné mechanizmy Javy prostredníctvom java.net.ProxySelector. Nepredpokladajte, že každá HTTP voľba natívneho Gitu je implementovaná len preto, že obaja klienti rozumejú konfiguračnému súboru Git.

Určite aplikáciu, ktorá vkladá JGit, jej verziu a zvolený HTTP prenos. Hostiteľská aplikácia môže poskytovať nastavenia alebo správanie nad rámec samostatných predvolených hodnôt JGit.

Potom skontrolujte konfiguráciu proxy v Jave viditeľnú pre tento proces. Pri HTTP prenose založenom na URLConnection skontrolujte vlastnosti hostiteľa a portu JVM, ktoré používa. Vlastnosť zadaná v nesúvisiacom termináli po spustení aplikácie nemôže prekonfigurovať bežiacu JVM. Natívna operácia Gitu v IDE a jej operácia JGit tiež môžu používať rôzne cesty.

Udržujte autentifikáciu proxy oddelene od výberu trasy. Vlastnosti proxy v Jave, ktoré určujú hostiteľa a port, automaticky neimplementujú schému hesla proxy. Použite podporovaný mechanizmus autentifikácie hostiteľskej aplikácie.

Užitočná otázka je „ktorý proxy si zvolila táto požiadavka JGit?“, nie „obsahuje moja konfigurácia Gitu riadok proxy?“. Úspech natívneho Gitu je cenné porovnanie, ale neodpovedá na túto otázku špecifickú pre implementáciu.

Súvisiace články