Our organisation has an internal git server, while I need to fetch third-party modules hosted elsewhere on the Internet. To access any external sites, I need to pass through the proxy server. If I enter our proxy settings into SourceTree in Tools -> Options -> Network -> 'Use custom proxy settings' and tick 'Add proxy server configuration to Git / Mercurial' checkbox in the same page, I am able to connect to external git repositories.
However, at this point, I am unable to fetch from our internal git server. I can only fetch from there if I untick the checkbox mentioned above.
So, to be able to use both external and internal repositories at the same time, I need to tell git to ignore the proxy for our internal git server and use the proxy for everything else. Could anyone please tell me how to accomplish this?
Basically, set some environment variables:
export no_proxy=".example.com localhost"
And make sure git uses the variables:
git config --global --unset http.proxy
(You may need to also set the corresponding https variable+config).
For an existing repo, you can also set http.proxy on a per-remote basis
git config --local remote.upstream.proxy proxy.example.com:8080
git config --local remote.internal.proxy ""
Thank you for your question.
git config –global http.proxy http://user:password@domain/reposiroty.git
After setting the proxy, please check the configuration by typing in the command:
git config –get –global http.proxy
Please, try (as it shouldn't work)
git pull origin master
git pull http://domain/repository.git master
If you find this answer useful, I would kindly ask you to accept it so the same will be visible to others who might be facing the same issue you have inquired.
Thank you for your understanding.
Rafael P. Sperafico
Thanks for the response Rafael, but it doesn't solve my problem.. git config --global http.proxy proxy.company.com The code above would set the global proxy to be used, wouldn't it? That would be the same as using the GUI (Tools -> Options -> Network -> 'Use custom proxy settings'), but that doesn't stop it from being used for my internal git server. You also seem to be pointing to the repo in that command, how does that work? I want to use the GUI to fetch from all remotes, both external and internal, at the same time. This won't work if I can't exclude my internal git server from using the proxy settings...
Badges are a great way to show off community activity, whether you’re a newbie or a Champion.Learn more
Supported Platforms macOS Windows To make using Sourcetree as simple yet powerful as possible we embed (bundle) dependencies such as Git, Git LFS, and Mercurial. We strive to keep these...
Connect with like-minded Atlassian users at free events near you!Find a group
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no AUG chapters near you at the moment.Start an AUG
You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs