首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >自定义SSH端口上的Git

自定义SSH端口上的Git
EN

Stack Overflow用户
提问于 2011-04-24 08:21:47
回答 3查看 191.9K关注 0票数 182

我的VPS提供商建议我将SSH端口保留为他们默认分配的自定义端口号(而不是22)。问题是,虽然我知道我可以在创建远程配置时提供端口号,但在进行git克隆时似乎不能这样做。我使用的是gitolite,所以我克隆命令如下:

代码语言:javascript
复制
git clone git@mydomain.com:gitolite-admin

有没有办法将其转换为使用自定义ssh端口号?

我还应该提到我在windows上运行cygwin。我见过很多地方要求将自定义端口添加到~/.ssh/config文件中,如下所示

代码语言:javascript
复制
Host mydomain.com
    Port 12345

然而,在cygwin中,该文件似乎并不存在。

EN

回答 3

Stack Overflow用户

发布于 2018-01-30 15:18:19

当您需要主目录(在任何UNIX上)的相对路径时,可以使用以下奇怪的语法:

ssh://[user@]host.xz[:port]/~[user]/path/to/repo

例如,如果存储库位于服务器jill.com上的/home/jack/projects/jillweb中,并且您以jack身份登录,并使用sshd侦听端口4242:

ssh://jack@jill.com:4242/~/projects/jillweb

jill身份登录时(假设您具有文件权限):

ssh://jill@jill.com:4242/~jack/projects/jillweb

票数 20
EN

Stack Overflow用户

发布于 2018-06-14 18:00:38

(更新:几年后,谷歌和Qwant“航空公司”在搜索"git非默认ssh端口“时仍然会把我送到这里)在更新的git版本中,一个可能更好的方法是使用GIT_SSH_COMMAND ENV.VAR,如下所示:

GIT_SSH_COMMAND="ssh -oPort=1234 -i ~/.ssh/myPrivate_rsa.key" \ git clone myuser@myGitRemoteServer:/my/remote/git_repo/path

这有一个额外的好处,即允许任何其他适合ssh的选项(端口、priv.key、IPv6、PKCS#11设备等)。

票数 15
EN

Stack Overflow用户

发布于 2021-03-16 20:30:52

Github已经在a helpful article上解释了如何解决这个问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5767850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档