git如何通过网络工作?(代理)

Vad*_*est 14 git proxy

我想知道它是如何git push工作的.我在代理后面,甚至在我的PhpStorm软件中配置它也行不通.

所以,我想知道它是如何通过网络发送的,我想使用端口80用于HTTP,443用于HTTPS.

我在SO上阅读了一堆线程,但无法弄清楚那里有什么问题.我猜"我的"代理没有启用WebDAV,如下所述:无法通过代理推送到github

但我想知道是否还有其他任何问题可以解决问题的根源,知道所有端口都已关闭,除了80,22和443.

git remote -vv
origin  https://Vadorequest@bitbucket.org/Vadorequest/vadorequest.git (fetch)
origin  https://Vadorequest@bitbucket.org/Vadorequest/vadorequest.git (push)
Run Code Online (Sandbox Code Playgroud)

解:

不安全的代理(http)

如果代理不安全,那么您可以使用以下命令进行配置:

git config --global http.proxy http://user:password@host:port

并使用以下方法禁用它

git config --global --unset-all http.proxy

安全代理(https)

git config --global https.proxy https://user:password@host:port

并使用以下方法禁用它

git config --global --unset-all https.proxy

请注意,如果您使用的是Windows并使用TortoiseGit,则可以从软件本身设置代理设置.(网络标签)

如果你正在使用Cygwin,那么请注意,如果你设置全局配置,它将只为当前环境设置.(使用cmd.exe将其设置为Windows,但使用cygwin控制台将仅为cygwin设置它)

因此,如果您通过IDE(PhpStorm,WebStorm)使用Git,请确保在IDE使用的环境中设置配置,否则它将无法工作.

还要注意,如果你已经在git设置中设置代理并且你不在代理之后,它也不会工作.(:你已经将它设置为工作状态并且工作正常,但是当你在家中使用它时,它以前不再工作了)

Ant*_*kov 10

如果您的代理允许访问而无需用户和密码,那么您可以使用:

git config --global https.proxy https://proxy.company.com:8888
Run Code Online (Sandbox Code Playgroud)

如果您的代理需要用户和密码,那么:

git config --global https.proxy https://user:password@proxy.company.com:8888
Run Code Online (Sandbox Code Playgroud)

请务必替换8888您的真实代理端口.
请务必替换proxy.company.com为您的真实代理服务器名称或IP地址.

告诉我这是否有帮助.