मैं ऐसा करने के दो Git उपनाम सेट किया गया है की तरह है क्या:
~/.gitconfig
[alias]
noproxy = config --global --remove-section http
proxy = config --global http.proxy http://127.0.0.1:9666
ध्यान दें कि मैं config --global --unset http.proxy
का उपयोग नहीं किया प्रॉक्सी पुनर्स्थापित करने के लिए, क्योंकि वह पीछे [http]
अनुभाग शीर्ष छोड़ देता है , इसलिए बार-बार प्रॉक्सी को सक्षम और अक्षम करने के बाद आपके .gitconfig
खाली [http]
सेक्शन हेडिंग्स के समूह के साथ प्रदूषित हो जाएंगे। कोई बड़ा सौदा नहीं है, लेकिन यह सिर्फ कष्टप्रद है।
जैसे कॉर्पोरेट फ़ायरवॉल के पीछे के रूप में कुछ मामलों में,, आप के बजाय ~/.ssh/config
विन्यस्त करने की जरूरत। सेटअप थोड़ा और अधिक जटिल हो जाता है:
~/.gitconfig
[alias]
noproxy = !sh -c 'cp ~/.ssh/config.noproxy ~/.ssh/config'
proxy = !sh -c 'cp ~/.ssh/config.proxy ~/.ssh/config'
~/.ssh/config.noproxy
Host github.com-username
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa
~/.ssh/config।प्रॉक्सी
Host *
ProxyCommand connect -H 127.0.0.1:9666 %h %p
Host github.com-username
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa
तुम भी यह करने के लिए उपनाम बदलकर दो तरीकों गठबंधन कर सकते हैं:
[alias]
noproxy = !sh -c 'git config --global --remove-section http 2> /dev/null && cp ~/.ssh/config.noproxy ~/.ssh/config'
proxy = !sh -c 'git config --global http.proxy http://127.0.0.1:9666 && cp ~/.ssh/config.proxy ~/.ssh/config'
अब मैं बस प्रॉक्सी निष्क्रिय करने के लिए टाइप कर सकते हैं git noproxy
और git proxy
इसे सक्षम करने के। आप अधिक उपनाम बनाकर कई प्रॉक्सी के बीच भी स्विच कर सकते हैं।
मेरी इच्छा है कि मैं इसे कई बार वोट दे सकता हूं! मैंने इस डरावनी चीज को समझने की कोशिश कर रहे दिन बिताए! आपको धन्यवाद! –
आपको बहुत बहुत धन्यवाद ... यह मुझे पागल कर रहा था ... – Tracker1