解决Git无法推送问题

结城 Git 12 次阅读 879 字 发布于 2026-04-27 预计阅读时间: 4 分钟


如果出现无法推送代码到Github的情况,首先需要检查下面的问题。

  1. 你是否完整的配置了系统代理,打不开网页首先要肯定不是你电脑的问题,是wall的问题。
  2. 你是否配置了git代理,如果没有配置的话需要完整配置。
  3. 你是否启用了git代理,如果配置git代理没有启用,那么效果等同于没有配置。
  4. 推送本地部署仓库的时候,是否关闭了git代理和本地代理,如果发现502网关错误或者是无法推送的情况要首先检查这里。

查看代理

git config --global --get http.proxy
git config --global --get https.proxy

取消代理

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

如果你电脑上的git能在大部分地方进行同步,但是在某处地方的网络下无法同步,并且运行git pull​或git push​长久没有反映,最后出现ssh: connect to host github.com port 22: Connection timed out,很可能是你的网络供应商(比如广电网)在出口防火墙上屏蔽了22端口,这意味着你将无法访问其他主机的22端口。

对此,github提供了一种解决方案,允许你使用443端口进行ssh连接,因为443端口是访问https网站所必须的,大部分防火墙都会允许通过。

运行这段命令,看看是否有成功提示,如果成功,则可以使用这个解决方案。

ssh -T -p 443 git@ssh.github.com

简单地配置一下,让你每次ssh连接github都通过443端口。如果你使用Linux,在~/.ssh/config​内,添加这些内容,指明ssh连接git@github.com​或git@ssh.github.com走443端口。

Host github.com
Hostname ssh.github.com
Port 443
User git

需要注意的是,假如你的电脑上拥有多个github账户,你可能事先修改过ssh的配置文件,你可能会将配置文件修改成这样子。

# For the account1
Host github_account1
HostName ssh.github.com
PreferredAuthentications publickey
Port 443
User git
IdentityFile ~/.ssh/id_rsa_account1

# For the account2
Host github_account2
HostName ssh.github.com
PreferredAuthentications publickey
Port 443
User git
IdentityFile ~/.ssh/id_rsa_account2

url = git@github_account1:account1/my_repo.git

你将通过配置文件中设置的Host​别名github_account1​代替github.com​访问github,这意味着,如果你想要进行进行git clone操作,也应该通过别名访问,否则无法走443端口。假如你想clone git@github.com:torvalds/linux.git​,你应该将链接修改为git@你设置的别名:torvalds/linux.git​。或者是,额外在配置文件里加上。这样就能直接git clone git@github.com:torvalds/linux.git了。

# Just for clone
Host github.com
HostName ssh.github.com
Port 443
User git

这个方案有效的前提是:执行命令ssh -T -p 443 git@ssh.github.com​后不再提示connection refused,所以要尝试这个方案的小伙伴先执行这条命令测试下。

一般情况下,如果无法推送的远程仓库,但是你的其他项目是可以推送的话,将你的项目使用https协议,不要使用ssh协议

然后把里面的url配置项从git格式

url = git@github.com:username/repo.git

修改为https格式

url = https://github.com/username/repo.git

这个其实修改的是repo根目录下的./git/config文件。说直白点,就是你项目目录下面的.git文件

给时光以生命,给岁月以文明
最后更新于 2026-06-15