O Git nativo funciona através do proxy, mas o JGit não
O JGit é uma implementação Java com as suas próprias definições de transporte suportadas. Uma entrada http.proxy no Git nativo não é uma configuração universal para todos os clientes Git.
O mesmo repositório funciona com git clone num terminal e falha numa aplicação que usa JGit. É uma comparação entre duas implementações, não necessariamente entre uma cópia funcional e uma avariada do mesmo cliente.
A referência de configuração do JGit indica que a configuração do proxy usa os mecanismos padrão do Java através de java.net.ProxySelector. Não assuma que todas as opções HTTP do Git nativo estão implementadas só porque ambos os clientes compreendem um ficheiro de configuração Git.
Identifique a aplicação que integra o JGit, a sua versão e o transporte HTTP escolhido. A aplicação anfitriã pode fornecer definições ou comportamentos além dos padrões autónomos do JGit.
Depois examine a configuração de proxy Java visível para esse processo. Para um transporte HTTP baseado em URLConnection, verifique as propriedades de anfitrião e porta da JVM que consome. Uma propriedade introduzida num terminal não relacionado depois de a aplicação arrancar não pode reconfigurar a JVM em execução. A operação Git nativa de uma IDE e a sua operação JGit também podem usar caminhos diferentes.
Mantenha a autenticação do proxy separada da seleção de rota. As propriedades de proxy Java que identificam um anfitrião e uma porta não implementam automaticamente um esquema de palavra-passe de proxy. Use o mecanismo de autenticação suportado pela aplicação anfitriã.
A pergunta útil é «que proxy escolheu este pedido JGit?» e não «a minha configuração Git contém uma linha de proxy?». Um sucesso com Git nativo é uma comparação valiosa, mas não responde a essa pergunta específica da implementação.