Bitbucket SSH 访问设置指南
Bitbucket SSH 访问设置指南
本文将详细介绍如何在Bitbucket上设置SSH访问。通过SSH访问可以更安全、更便捷地管理Git仓库,避免了每次操作都需要输入用户名和密码的麻烦。本文将从检查环境、生成SSH密钥对、配置SSH代理、添加公钥到Bitbucket等多个方面进行详细讲解。
要通过 SSH 访问 Bitbucket git 仓库,您需要设置 SSH 密钥。这个操作每台机器和用户账户只需设置一次。以下是详细的设置步骤和注意事项:
一、检查并创建 .ssh
目录
- 检查
.ssh
目录:
- 在 Windows 上,您可以在资源管理器的地址栏中输入
%USERPROFILE%\.ssh
并按回车来检查这个目录是否存在。 - 如果不存在,您需要手动创建它。
二、生成 SSH 密钥对
- 运行
ssh-keygen
命令:
- 打开您选择的终端(如命令提示符、PowerShell 或 Git Bash)。
- 执行以下命令生成新的 SSH 密钥对:
ssh-keygen -t ed25519 -f "%USERPROFILE%\.ssh\id_ed25519"
- 如果已存在同名文件,系统会提示是否覆盖,按提示操作即可。
- 按回车确认每个提示(包括密码设置,可选),这将创建两个文件:
id_ed25519
(私钥)和id_ed25519.pub
(公钥)。
三、配置 SSH 代理(如适用)
- 如果您的机器在特定企业网络内(如博世企业网络 BCN),您可能需要配置特殊代理。
- 检查
%HOMEDRIVE%%HOMEPATH%\.ssh\config
和%USERPROFILE%\.ssh\config
文件是否存在,并根据需要创建和配置。 - 示例配置内容:
Host bitbucket.etas-dev.com HostName sproxy100.fe.internet.bosch.com IdentityFile ~/.ssh/id_ed25519
四、将公钥添加到 Bitbucket
- 打开公钥文件:
- 使用文本编辑器打开
id_ed25519.pub
文件。
- 复制公钥内容。
- 登录 Bitbucket 并导航到 “管理账户 > SSH 密钥 > 添加密钥”。
- 粘贴公钥内容 并保存。
五、验证 SSH 设置
- 在终端中运行以下命令,验证 SSH 设置是否正确:
ssh -T git@bitbucket.etas-dev.com
- 如果设置正确,您应该会看到欢迎信息。
六、克隆仓库
- 在 Bitbucket 中导航到相应的项目,点击 “克隆” 按钮,复制 SSH URL。
- 使用该 URL 通过您的本地 git 客户端克隆仓库。
七、常见错误及解决办法
- “无法解析主机名” 错误:
- 检查
HOME
目录的环境变量设置是否正确。 - 在 Windows 上,可以通过设置用户级别的
%HOME%
环境变量来更改 Home(~)目录。
- “所有者或权限错误”:
- 检查
.ssh
文件夹的文件权限,确保私钥文件权限正确。
- 密码不匹配:
- 在设置 SSH 密钥密码时,确保两次输入的密码一致。
- 使用正确的 SSH 客户端:
- 在 Windows 上,Git 可以在任何 shell 中工作,不必局限于 Git Bash。
- 避免使用 HTTPS:
- 使用 SSH 而不是 HTTPS 进行 git 操作,以避免密码更改导致的连接失败。
- 不要复制多个 SSH 密钥:
- 如果使用多台机器,最好将第一台机器的 SSH 密钥复制到所有其他机器上,而不是在每台机器上创建新的密钥。
IIU4SGH@SGH-C-000UQMINGW64/c/Users/iiu4sgh/Desktop/work_place/VRTE_Git_Folder/etas_vos_vrte (master)
$ssh-keygen -t ed25519 -f "C:\Users\iiu4sgh.ssh\id_ed25519"
Generating public/private ed25519 key pair.
C:\Users\iiu4sgh.ssh\id_ed25519 already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Passphrases do not match. Try again.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in C:\Users\iiu4sgh.ssh\id_ed25519
Your public key has been saved in C:\Users\iiu4sgh.ssh\id_ed25519.pub
The key fingerprint is:
SHA256:UTQ3jB6rlcUtOAgDEgtLSYwklfGVgQIi1LlJ5hz315g IIU4SGH@SGH-C-000UQ
The key's randomart image is:
+--[ED25519 256]--+
|%BB+oo=+ o+=o. |
|=oX.o....=o=.. |
|. . . ..+ . |
| = . E=. |
| So |
| . |
| |
| |
| |
+----[SHA256]-----+
在Windows上设置SSH和创建公钥私钥对的步骤如下:
检查现有的SSH密钥: 在Windows资源管理器的地址栏中粘贴%USERPROFILE%.ssh来浏览.ssh目录。如果您已经有了名为id_ed25519和id_ed25519.pub的文件,那么您之前已经创建了SSH密钥,可以跳过创建步骤。
生成新的SSH密钥对: 打开您选择的终端(如命令提示符、PowerShell或Git Bash)并执行以下命令:
ssh-keygen -t ed25519
按回车确认每个提示,这将创建两个文件:id_ed25519(私钥)和id_ed25519.pub(公钥)。配置特殊代理到SSH配置文件: 如果您的机器在博世企业网络(BCN)内,您需要配置特殊代理。在Windows上,首先检查以下两个文件是否存在:
- %HOMEDRIVE%%HOMEPATH%.ssh\config(通常位于网络驱动器上)
- %USERPROFILE%.ssh\config(通常位于本地磁盘上)
如果两个文件都不存在,创建第一个。然后将以下内容追加到该文件中:
Host bitbucket.etas-dev.com
HostName sproxy100.fe.internet.bosch.com
IdentityFile ~/.ssh/id_ed25519
将公钥添加到Bitbucket: 使用文本编辑器打开id_ed25519.pub文件,复制公钥内容。登录到Bitbucket账户,在“管理账户 > SSH密钥 > 添加密钥”中粘贴公钥内容并保存。
克隆仓库: 完成上述步骤后,您可以轻松克隆仓库。在Bitbucket中导航到相应的项目,点击“克隆”按钮,它会自动显示正确的链接。使用该URL通过您的本地git客户端克隆仓库。
请记住,如果您使用多台机器,最好不要在服务器上创建和注册多个SSH密钥,而是将第一台机器的密钥复制到所有其他机器上。
对于更复杂的设置,如Jenkins管道中的SSH使用或Artifactory的SSH使用,您可能需要阅读更详细的配置指南。特别是如果您在BCN内,需要为Artifactory创建额外的RSA密钥,并配置SSH以接受它们,因为Artifactory目前不接受ed25519密钥。请注意,用于Artifactory的特殊代理与Bitbucket的不同。如果您需要进一步的帮助,请参考相关的配置文档或联系技术支持。祝您配置顺利!
问题:
check the command
cd ~ && ls
解决办法:
需要确保HOME目录的环境变量设置是OK的。不然设置的密钥是找不到的。