使用ssh链接从远程服务器进行git clone

mba*_*rov 2 git ssh

我们在删除服务器A上有一个git存储库.我通常从我的工作机器通过ssh访问它,例如

git clone user@A:/path/to/repo 

但是,A不能直接从外部工作访问.还有另一台服务器B,我可以将其输入到A.然后我想要做的就是在家里的机器上克隆存储库.我试过像这样的东西

git clone B:A:/path/to/repo
git clone user@B:A/path/to/repo

两者都不起作用.我想我可以复制B上的回购并从那里克隆,但将更改合并回A将是一件麻烦事.有关我如何直接访问A的任何建议?

Dav*_*dek 5

如果您在服务器A和服务器B之间进行无密码SSH设置,那么您可以编写一个简单的包装器脚本,该脚本通过SSH连接到服务器A,并使用来自Git的参数运行SSH命令.

创建脚本:

cat << EOF > ssh-wrapper.sh
#!/bin/sh
ssh -T serverB.example.com ssh ${@}
exit $?
EOF
chmod 755 ssh-wrapper.sh
Run Code Online (Sandbox Code Playgroud)

然后将GIT_SSH设置为./ssh-wrapper.sh并调用Git:

GIT_SSH='./ssh-wrapper.sh' git clone user@A:/path/to/repo
Run Code Online (Sandbox Code Playgroud)