You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何强制Git在SSH连接远程仓库时使用指定端口?

解决Git推送时默认使用22端口的问题

你的问题出在远程仓库URL的格式错误,Git无法识别你写在my-project.com后面的:7822端口,所以依然默认使用SSH的22端口尝试连接,导致被拒绝。下面是两种可行的解决方案:

方案一:修改远程仓库URL为标准SSH格式

Git支持带端口的SSH URL格式,需要用ssh://协议头来明确指定端口。执行以下命令更新你的production远程分支:

git remote set-url production ssh://rails@my-project.com:7822/home/rails/myproject

这个格式中,7822会被Git正确识别为SSH连接端口,而不是路径的一部分。

方案二:通过Git配置指定主机端口

如果你更习惯原来的scp风格URL(rails@my-project.com:/home/rails/myproject),可以在本地Git配置中为my-project.com指定默认端口:

  1. 打开本地仓库的.git/config文件,添加以下配置段:
[host my-project.com]
    user = rails
    port = 7822
  1. 或者直接用命令行完成配置:
git config --add host.my-project.com.port 7822
git config --add host.my-project.com.user rails

配置完成后,Git在连接my-project.com时会自动使用7822端口,无需修改原URL。

验证配置

执行以下命令查看远程仓库配置是否正确:

git remote -v

之后再尝试推送:

git push production master

内容的提问来源于stack exchange,提问作者satish

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 04:17:35