Git 将具有非标准端口号的SSH存储库克隆到SourceTree
我花了大约20分钟来处理这个问题 我收到了一封电子邮件,其中包含一个存储库的SSH地址。关键是它有一个非标准(即不是22)端口号:Git 将具有非标准端口号的SSH存储库克隆到SourceTree,git,url,ssh,atlassian-sourcetree,sourcetree,Git,Url,Ssh,Atlassian Sourcetree,Sourcetree,我花了大约20分钟来处理这个问题 我收到了一封电子邮件,其中包含一个存储库的SSH地址。关键是它有一个非标准(即不是22)端口号: git@domain.com:1234/opt/git/repository.git 我假设我可以将其复制粘贴到SourceTree中,但不断收到这不是有效的源路径/URL错误消息 当我仔细查看日志时,错误是它在服务器上查找路径1234/opt/git/repository.git——它将端口号视为路径的一部分。显然没有找到回购协议。解决方案有点奇怪: 使用类似于s
git@domain.com:1234/opt/git/repository.git
我假设我可以将其复制粘贴到SourceTree中,但不断收到这不是有效的源路径/URL
错误消息
当我仔细查看日志时,错误是它在服务器上查找路径
1234/opt/git/repository.git
——它将端口号视为路径的一部分。显然没有找到回购协议。解决方案有点奇怪:
git@domain.com:1234
:
opt/git/repository.git
。
在端口号之后添加ssh://
,并添加一个:
,该端口号似乎成功地充当了分隔符,并且在服务器上找到了路径/opt/git/repository.git
~/.ssh/config
)使其看起来像这样:Host domain.com
端口1234
我在运行Git服务器的Synology NAS上尝试了您的答案。但是,我必须删除端口号后的“:”才能有一个工作URL。因此,就我而言(以你为例):ssh://git@domain.com:1234/opt/git/repository.git与@Peter报告的情况相同。