【发布时间】:2011-04-05 12:08:54
【问题描述】:
在 Git 中,当我的主机使用不同的 SSH 端口时,如何添加远程源服务器?
git remote add origin ssh://user@host/srv/git/example
【问题讨论】:
在 Git 中,当我的主机使用不同的 SSH 端口时,如何添加远程源服务器?
git remote add origin ssh://user@host/srv/git/example
【问题讨论】:
尝试连接到我的 git 服务器时遇到类似问题
(在 docker 容器中有一个 gitea 服务器,其 ssh 端口配置为 2022,而不是标准的 22,这里以 my-git-server.lan 为例)。
$ ssh-keygen -q -N '' -b 4096 -f ~/.ssh/mykeyfile
(这将创建两个文件:私钥mykeyfile 和公钥mykeyfile.pub)
$ cat ~/.ssh/mykeyfile.pub
$ nano ~/.ssh/config
Host my-git-server.lan
HostName my-git-server.lan
User git
Port 2022
IdentityFile ~/.ssh/mykeyfile
(请注意,用户名是always git,无论您在 git-server 上的实际用户名如何)
$ ssh -T git@my-git-server.lan
(再次注意,用户名是always 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
(在这里您还可以看到,在我的 git-server 上,我的实际用户是 alex 而存储库是 myproject )
完成!您现在可以使用您的 git-server .. fetch/commit/push 等。
(这是我在serverfault.com上的帖子的副本)
【讨论】:
对于 gitlab,示例 ssh 端口是 2224,因此:
git 远程添加 ssh://git@192.168.1.100:2224/your_group/your_project.git
【讨论】:
1.git 远程添加 ${shortname} ${url}
2.git remote remove 短名称(是删除远程)
3.git remote -v(就是查看你当前的远程列表)
4.git 推送远程分支
5.git remote 重命名 A B(将A重命名为B)
6.git remote show 短名称(显示远程信息)
这一切都适合我。
【讨论】:
除了使用 ssh:// 协议前缀外,您还可以继续使用传统的 URL 表单通过 SSH 访问 git,只需稍作改动。提醒一下,the conventional URL is:
git@host:path/to/repo.git
要指定替代端口,请将括号括在 user@host 部分周围,包括端口:
[git@host:port]:path/to/repo.git
但如果端口更改只是暂时的,您可以告诉 git 使用不同的 SSH 命令,而不是更改存储库的远程 URL:
export GIT_SSH_COMMAND='ssh -p port'
git clone git@host:path/to/repo.git # for instance
【讨论】:
git remote add 将其添加为远程时,我必须将 URL 用双引号括起来才能使此语法正常工作。像这样:git remote add gitea "[git@host:port]:path/to/repo.git"
你可以这样做:
git remote add origin ssh://user@host:1234/srv/git/example
1234 是正在使用的 ssh 端口
【讨论】:
git remote add origin user@host:1234/srv/git/example
最佳答案对我不起作用。我从一开始就需要ssh://。
# does not work
git remote set-url origin user@example.com:10000/aaa/bbbb/ccc.git
# work
git remote set-url origin ssh://user@example.com:10000/aaa/bbbb/ccc.git
【讨论】:
对于那些编辑./.git/config的人
[remote "external"]
url = ssh://evanc@www.foo.com:11720/aaa/bbb/ccc
fetch = +refs/heads/*:refs/remotes/external/*
【讨论】:
【讨论】:
PasswordAuthentication no。