git svn nutzt nicht zwangsläufig Gits HTTP-Proxy
git svn spricht über einen anderen Client-Stack mit Subversion. Finden Sie die Subversion-Konfiguration, die diese Umgebung liest.
git fetch funktioniert, aber git svn fetch erreicht den Server nicht. Trotz des gemeinsamen Befehlspräfixes spricht der letztere Vorgang über einen anderen Client-Stack mit einem Subversion-Repository.
Gehen Sie nicht davon aus, dass ein nativer Git-Eintrag http.proxy diese Subversion-Verbindung konfiguriert. Finden Sie die Laufzeitkonfiguration, die die Subversion-Bibliotheken in der Umgebung verwenden, in der git svn läuft.
Die servers-Konfiguration von Subversion kann Folgendes enthalten:
[global]
http-proxy-host = proxy.example
http-proxy-port = 8080
Hostname und Port sind getrennte Werte; die HTTP-Proxy-Liste liefert Kandidaten für zulässige öffentliche Subversion-Routen. Proxy-Kontofelder sind von den Repository-Anmeldedaten getrennt. Subversion-Servergruppeneinstellungen stimmen mit Hostnamen überein, nicht mit beliebigen Repository-Pfaden. Behandeln Sie sie als Subversions Schnittstelle, nicht als alternative Schreibweise der Proxy-URL von Git.
Unter Windows kann der Pfad die Überraschung sein
Eine native Subversion-Binärdatei und eine git svn-Installation können unterschiedliche Umgebungen und unterschiedliche Auslegungen des Home-Verzeichnisses verwenden. Das Bearbeiten der Konfiguration, die svn.exe verwendet, ist kein Beweis dafür, dass der git svn-Aufruf sie gelesen hat.
Halten Sie fest, welche Binärdatei und welche Bibliotheksumgebung beteiligt sind, und ermitteln Sie dann ihren effektiven Konfigurationsort. Vermeiden Sie es, den Pfad eines Benutzers in ein maschinenweites Skript zu kopieren.
Konten getrennt halten
Der Proxy kann die ausgehende Verbindung authentifizieren. Das Subversion-Repository kann danach ein anderes Konto verlangen. Ein HTTP 407 und ein Autorisierungsfehler des Repositorys beschreiben unterschiedliche Phasen.
Wenn die URL oder Route durch eine Richtlinie verweigert wird, verwenden Sie den genehmigten Endpunkt und die genehmigte Zugangsregelung. Dass ein Browser die Weboberfläche des Repositorys öffnet, ist nur ein teilweiser Vergleich: Er kann ein anderes Konto, einen anderen Konfigurationsspeicher oder eine andere Route verwenden. Das Ziel ist ein erfolgreicher Subversion-Vorgang über den vorgesehenen Vermittler, nicht bloß eine erfolgreiche gewöhnliche Webseitenanfrage.