Yerel Git proxy üzerinden çalışır, ancak JGit çalışmaz
JGit, kendi desteklenen taşıma ayarlarına sahip bir Java uygulamasıdır. Yerel Git'teki http.proxy girdisi her Git istemcisi için evrensel bir yapılandırma değildir.
Aynı depo terminalde git clone ile çalışır ve JGit kullanan bir uygulamada başarısız olur. Bu, iki uygulama arasında bir karşılaştırmadır; aynı istemcinin çalışan ve bozuk bir kopyası arasındaki karşılaştırma olmak zorunda değildir.
JGit yapılandırma başvurusu, proxy yapılandırmasının java.net.ProxySelector aracılığıyla Java'nın standart mekanizmalarını kullandığını söyler. Her iki istemci de bir Git yapılandırma dosyasını anlıyor diye yerel Git'in her HTTP seçeneğinin uygulandığını varsaymayın.
JGit'i gömerek kullanan uygulamayı, sürümünü ve seçilen HTTP taşımasını belirleyin. Ana uygulama, JGit'in bağımsız varsayılanlarının ötesinde ayarlar veya davranış sunabilir.
Ardından o sürece görünen Java proxy yapılandırmasını inceleyin. URLConnection tabanlı bir HTTP taşıması için kullandığı JVM ana bilgisayar ve bağlantı noktası özelliklerini kontrol edin. Uygulama başladıktan sonra ilgisiz bir terminale girilen bir özellik, çalışan JVM'i yeniden yapılandıramaz. Bir IDE'nin yerel Git işlemi ile JGit işlemi de farklı yollar kullanabilir.
Proxy kimlik doğrulamasını rota seçiminden ayrı tutun. Ana bilgisayarı ve bağlantı noktasını tanımlayan Java proxy özellikleri otomatik olarak bir proxy parola düzeni uygulamaz. Ana uygulamanın desteklenen kimlik doğrulama mekanizmasını kullanın.
Yararlı soru “bu JGit isteği hangi proxy'yi seçti?” sorusudur, “Git yapılandırmamda proxy satırı var mı?” değil. Yerel Git başarısı değerli bir karşılaştırmadır, ancak bu uygulamaya özgü soruyu yanıtlamaz.