我已经在计算机上设置了本地 git 存储库,并且正在尝试将其推送到新创建的 Bitbucket 帐户。
问题是 Bitbucket 给了我一个
ssh
网址来推送,但我所在的网络(大学)的 ssh 端口被阻止用于外部 ssh。所以失败了,如果我尝试用 ssh://
替换 https://
,它会一直告诉我身份验证失败。
有没有一种方法可以在不使用
ssh
的情况下推送到bitbucket?
您可以通过 HTTPS 连接到 GitHub 和 Bitbucket 存储库。两者都可以让你推动。
以下是 HTTPS 访问的典型 URL:
https://[email protected]/username/repository.git
https://github.com/username/repository.git
请注意,每当您想要与远程通信时,Git 都会提示您输入密码。
我想补充一点,SourceTree 不知何故想要它而不需要用户名:
https://bitbucket.org/username/repository.git
如果他们阻止了端口,但没有阻止协议,您可以在几个主要代码主机上通过 HTTPS 端口使用 SSH。
您可以通过在存储库配置中精心设计的遥控器来完成此操作,但要求 SSH 为您的整个用户帐户重新映射这些连接要容易得多。这进入
~/.ssh/config
:
Host bitbucket.org
HostName altssh.bitbucket.org
Port 443
Host github.com
HostName ssh.github.com
Port 443
Host gitlab.com
HostName altssh.gitlab.com
Port 443
此外,为了好玩,您可以将
RequestTTY no
和 User git
添加到每个块,以便轻松 ssh -v github.com
调试连接。 (奖励:将主机添加到 SSH 配置使它们可以使用 Tab 键完成。)