我连接到的大多数服务器都使用非标准 ssh 端口 (1234)。所以在我的 ssh 配置文件中,我有:
Port 1234
Run Code Online (Sandbox Code Playgroud)
但是 github.com 使用端口 22。当我尝试连接到 github 时,它显然尝试使用端口 1234。现在我必须编辑我的 ssh 配置才能使事情正常工作。
这是我的 git 配置中的一个片段:
[remote "origin"]
url = git@github.com:asdf/asdf.git
Run Code Online (Sandbox Code Playgroud)
daf*_*aff 35
看看如何正确设置您的~/.ssh/config文件(man 5 ssh_config)。您可以轻松地为不同的主机指定不同的设置。为了解决你的问题,你会设置
Host github.com
Port 22
Host *
Port 1234
Run Code Online (Sandbox Code Playgroud)
请查看 ssh_config 手册页,它在前几页解释了您需要了解的所有内容。
Chr*_*sen 35
在 in 中设置一个部分~/.ssh/config是一个很好的解决方案,但了解另一种方法可能会很有用。
常见的类似scp的语法user@host:path没有用于端口的地方,但 Git 也支持ssh:可用于指定端口的URL 方案:
ssh://git@github.com:22/asdf/asdf.git
Run Code Online (Sandbox Code Playgroud)
虽然ssh:URL 支持端口规范,但它不支持相对路径(例如,没有直接等效于where不以斜杠开头的类似scp的语法)。user@host:pathpath
GitHub 以相同的方式对待相对路径和绝对路径,因此它适用于它们,但它可能不适用于所有基于 SSH 的 Git 存储库。对于简单的基于 SSH 的托管,您可能需要插入/home/username/或/Users/username/从相对路径切换到绝对路径。一些托管系统可能根本不处理绝对路径(尽管我倾向于将这种缺乏支持称为错误)。
尝试连接到我的 git 服务器时遇到类似问题
(在 docker 容器中有一个gitea服务器,ssh 端口配置为2022,而不是标准 22,这里作为示例my-git-server.lan)。
$ ssh-keygen -q -N '' -b 4096 -f ~/.ssh/mykeyfile
Run Code Online (Sandbox Code Playgroud)
(这将创建两个文件: private-keymykeyfile和 public-key mykeyfile.pub)
$ cat ~/.ssh/mykeyfile.pub
Run Code Online (Sandbox Code Playgroud)
$ nano ~/.ssh/config
Host my-git-server.lan
HostName my-git-server.lan
User git
Port 2022
IdentityFile ~/.ssh/mykeyfile
Run Code Online (Sandbox Code Playgroud)
(请注意,无论您在 git 服务器上的实际用户名如何,用户名始终为 ) git
$ ssh -T git@my-git-server.lan
Run Code Online (Sandbox Code Playgroud)
(再次注意,用户名始终 git是)
ssh://git@my-git-server.lan:2022/alex/myproject.git(再次注意用户git和端口2022),..检查远程配置$ cd your/local/git/repository/folder
$ git remote add my-git-server ssh://git@my-git-server.lan:2022/alex/myproject.git
$ git remote -v
Run Code Online (Sandbox Code Playgroud)
(在这里您还可以看到,在我的 git 服务器上,我的实际用户是alex,存储库是myproject)
完毕!您现在可以使用 git-server .. fetch/commit/push 等。
(当我提出问题后立即找到答案时,我喜欢它。)
我修改了我的 ssh 配置以指定每个主机的端口而不是全局设置:
Host asdf.com
Port 1234
Host github.com
User git
Hostname github.com
Port 22
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
81475 次 |
| 最近记录: |