Δώστε στο Git διαφορετικούς κανόνες διαμεσολαβητή για διαφορετικούς κεντρικούς υπολογιστές
Η ρύθμιση HTTP του Git για συγκεκριμένα URL μπορεί να κρατήσει μια εσωτερική υπηρεσία άμεση ενώ διατηρεί διαμεσολαβητή αλλού. Ελέγξτε το αποτέλεσμα αντιστοίχισης για το ακριβές URL.
Μία ρύθμιση Git μπορεί να εξυπηρετήσει δύο εντελώς διαφορετικές διαδρομές: έναν εξωτερικό κεντρικό υπολογιστή που προσεγγίζεται μέσω εγκεκριμένου διαμεσολαβητή και έναν εσωτερικό που προσεγγίζεται απευθείας. Δεν χρειάζεται να επεξεργάζεστε την καθολική προεπιλογή κάθε φορά που αλλάζετε αποθετήριο.
Το Git υποστηρίζει ρύθμιση HTTP ειδική για URL. Για παράδειγμα:
[http]
proxy = http://proxy.example:8080
[http "https://git.office.example/"]
proxy =
Για ένα εξωτερικό δημόσιο αποθετήριο όπου επιτρέπονται δημόσιοι διαμεσολαβητές, η λίστα διαμεσολαβητών HTTP προσφέρει υποψηφίους για το προεπιλεγμένο τελικό σημείο. Η κενή τιμή είναι ρητή παράκαμψη για το αντίστοιχο URL. Διαφέρει από τη διαγραφή εκείνου του πιο συγκεκριμένου κλειδιού, που μπορεί να εκθέσει ξανά τον γενικό διαμεσολαβητή.
Αντιστοιχίστε το URL που χρησιμοποιεί το Git
Το σχήμα, το όνομα κεντρικού υπολογιστή, η θύρα, η διαδρομή και το προαιρετικό όνομα χρήστη συμμετέχουν στους τεκμηριωμένους κανόνες αντιστοίχισης. Μην αντιμετωπίζετε το υποτμήμα URL ως γενική έκφραση μπαλαντέρ κελύφους. Ένας στενότερος κανόνας διαδρομής μπορεί να υπερισχύσει ενός ευρύτερου κανόνα κεντρικού υπολογιστή.
Για προβολή μόνο για ανάγνωση της αντίστοιχης ρύθμισης διαμεσολαβητή:
git config --get-urlmatch http.proxy https://git.office.example/team/project.git
Αυτό ελέγχει την αντιστοίχιση ρύθμισης. Δεν είναι δοκιμή δικτύου και δεν αποδεικνύει ότι η διαδρομή είναι προσβάσιμη. Λάβετε επίσης υπόψη άλλα πεδία ρύθμισης και σχετικές ρυθμίσεις περιβάλλοντος.
Η ανακατεύθυνση δεν είναι νέα αντιστοίχιση ρύθμισης
Η τεκμηρίωση του Git λέει ότι τα αντιστοιχισμένα URL είναι εκείνα που δίνονται απευθείας στις εντολές Git· τα URL που επισκέπτονται λόγω ανακατεύθυνσης δεν συμμετέχουν σε αυτή την αντιστοίχιση. Λάβετε υπόψη αυτόν τον περιορισμό αν ο πρώτος κεντρικός υπολογιστής ανακατευθύνει τις λήψεις αλλού.
Η διαδρομή πρέπει επίσης να ταιριάζει με το μεταφορικό μέσο. Ένα απομακρυσμένο SSH δεν διέπεται από υποτμήμα URL HTTP απλώς επειδή η ίδια υπηρεσία προσφέρει ιστότοπο HTTPS.
Χρησιμοποιήστε λίγους σκόπιμους κανόνες και μετά ελέγξτε το αποτέλεσμα για αντιπροσωπευτικά URL. Μια μακρά συσσώρευση καθολικών, τοπικών στο αποθετήριο και ειδικών για URL καταχωρίσεων διαμεσολαβητή είναι πολύ δυσκολότερο να συλλογιστεί κανείς από τη δικτυακή διάκριση που προσπαθούσατε να εκφράσετε.