ഒരു Git റിപ്പോസിറ്ററിക്ക് മാത്രം പ്രോക്സി ഉപയോഗിക്കുക
റിപ്പോസിറ്ററി-ലോക്കൽ HTTP പ്രോക്സി സജ്ജമാക്കി റിമോട്ട് URL-ന് Git തിരഞ്ഞെടുത്ത ക്രമീകരണം പരിശോധിച്ച് ആവശ്യമില്ലാത്തപ്പോൾ ഓവർറൈഡ് നീക്കുക.
ഒരു പദ്ധതിക്ക് വേറെ കണക്ഷൻ വേണമെന്നതുകൊണ്ട് ഗ്ലോബൽ Git പ്രോക്സി ആവശ്യമില്ല. നിലവിലെ ചെക്കൗട്ടിന് സ്വന്തം ലോക്കൽ ക്രമീകരണം ഉണ്ട്; അതിനാൽ മാറ്റം ആ റിപ്പോസിറ്ററിയിൽ സൂക്ഷിക്കാം.
ഉദാഹരണങ്ങൾ നിലവിലെ git config set/get/unset കമാൻഡുകൾ ഉപയോഗിക്കുന്നു. പ്രോജക്ട് ഡയറക്ടറി, റിമോട്ട് URL, രേഖാ IP എന്നിവ മാറ്റേണ്ട മാതൃകകളാണ്. പൊതു പ്രോക്സി അനുവദിച്ച പൊതു റിപ്പോസിറ്ററി പരിശോധനയ്ക്ക് HTTP പ്രോക്സി പട്ടികയിൽനിന്ന് സ്ഥാനാർഥി തിരഞ്ഞെടുക്കുക.
git -C project config set --local http.proxy http://203.0.113.10:8080
git -C project ls-remote origin
പ്രോക്സി URL അതിന്റെ ട്രാൻസ്പോർട്ട് സ്കീം ഉൾക്കൊള്ളുന്നു. HTTPS റിമോട്ടിനും CONNECT പിന്തുണയുള്ള സാധാരണ HTTP പ്രോക്സി ഉപയോഗിക്കാം; റിമോട്ടിന്റെ HTTPS സ്കീം പ്രോക്സി URL HTTPS ആക്കാൻ നിർബന്ധിക്കുന്നില്ല.
Git യഥാർത്ഥത്തിൽ തിരഞ്ഞെടുത്തത് പരിശോധിക്കുക
ഫലം പ്രതീക്ഷിച്ചതല്ലെങ്കിൽ യഥാർത്ഥ റിമോട്ട് URL-നു തിരഞ്ഞെടുത്ത മൂല്യം പരിശോധിക്കുക:
git -C project config get --show-origin \
--url=https://example.com/team/project.git http.proxy
ചോദ്യത്തിൽ സ്വന്തം യഥാർത്ഥ HTTPS റിമോട്ട് ഉപയോഗിക്കുക. Git-ന് സിസ്റ്റം, ഉപയോക്താവ്, റിപ്പോസിറ്ററി, കമാൻഡ്-ലൈൻ, URL-പ്രത്യേക ക്രമീകരണങ്ങൾ ഉണ്ടാകാം. ഗ്ലോബൽ http.proxy മൂല്യം മാത്രം നോക്കിയാൽ കൂടുതൽ കൃത്യമായ നിയമം കാണാതെ പോകാം. ഉറവിട ഔട്ട്പുട്ട് ഫലത്തിന്റെ പിന്നിലെ ഫയലോ കമാൻഡ്-ലൈൻ ഉറവിടമോ കണ്ടെത്താൻ സഹായിക്കുന്നു.
ലോക്കൽ ക്രമീകരണം ആ റിപ്പോസിറ്ററിയിൽനിന്നുള്ള HTTP പ്രവേശനത്തിനാണ്, ഒരു ബ്രാഞ്ചിനുമാത്രമല്ല. പല HTTP റിമോട്ടുകളുണ്ടെങ്കിൽ ആദ്യം പരീക്ഷിച്ചതിനു പുറത്തും ബാധകമാകാം. ചുരുങ്ങിയ പൊരുത്തത്തിന് URL-പ്രത്യേക HTTP ക്രമീകരണം ലഭ്യമാണ്.
ചെക്കൗട്ട് ഉണ്ടാകുന്നതിനുമുമ്പ്
ആദ്യ ക്ലോണിന് ഓവർറൈഡ് നിലനിൽക്കണമോ എന്ന് തിരഞ്ഞെടുക്കുക; ആ Git കോളിൽ മാത്രം ഒതുക്കാൻ ഉപയോഗിക്കുക:
git -c http.proxy=http://203.0.113.10:8080 \
clone https://example.com/team/project.git
കമാൻഡ്-ലൈൻ ഓവർറൈഡ് തനിയെ പുതിയ ചെക്കൗട്ടിലെ സ്ഥിരം ക്രമീകരണമാകുന്നില്ല. പിന്നീടുള്ള fetch അതേ പാത ഉപയോഗിക്കണമെങ്കിൽ പിന്നീട് ലോക്കൽ മൂല്യം നൽകുക.
SSH റിമോട്ട് വേറൊരു സാഹചര്യമാണ്
git@host: അല്ലെങ്കിൽ ssh://-ൽ തുടങ്ങുന്ന റിമോട്ട് SSH ഉപയോഗിക്കുന്നു. Git-ന്റെ HTTP പ്രോക്സി ക്രമീകരണം അതിനെ HTTP കൈമാറ്റമാക്കുന്നില്ല. SSH നടപടി ഇനിയും പരാജയപ്പെടുന്നു എന്നതുകൊണ്ട് പ്രവർത്തിക്കുന്ന പ്രോക്സി IP മാറ്റുംമുമ്പ് റിമോട്ടിന്റെ ട്രാൻസ്പോർട്ട് പരിശോധിക്കുക.
ലോക്കൽ ഓവർറൈഡ് വേണ്ടെങ്കിൽ ആ കീ മാത്രം നീക്കുക:
git -C project config unset --local http.proxy
നീക്കുമ്പോൾ മറ്റു ഉറവിടങ്ങളിലെ ബാധകമായ ക്രമീകരണം വീണ്ടും പ്രവർത്തിക്കും. യന്ത്രത്തിലെ എല്ലാ പ്രോക്സി ക്രമീകരണവും മായ്ക്കുന്ന കമാൻഡല്ല ഇത്.