脚本功能#
- 设置 Git 用户名和邮箱
脚本会提示用户输入 Git 用户名和邮箱,并将其设置为全局配置。 - 生成新的 SSH 密钥
脚本会自动生成新的 SSH 密钥对(私钥和公钥),用于与 GitHub 建立安全连接。在生成过程中,用户可以持续按回车键使用默认设置。 - 将 SSH 私钥添加到 ssh-agent
脚本会自动将生成的 SSH 私钥添加到 ssh-agent 中,以便在后续推送或拉取代码时无需每次手动输入密钥。 - 将 SSH 公钥复制到剪贴板(可选)
如果用户的系统安装了xclip
工具,脚本会尝试自动将 SSH 公钥内容复制到剪贴板,方便用户在 GitHub 上配置。如果系统未安装xclip
,脚本会输出公钥内容,提示用户手动复制。 - 提供 GitHub 配置指引
脚本会给出在 GitHub 上添加 SSH 公钥的详细步骤,引导用户完成配置。 - 测试 SSH 连接
最后,脚本会尝试通过 SSH 连接到 GitHub,验证配置是否成功。如果连接成功,将输出相应的提示信息。
使用方式#
- 确保您的系统已安装 Git 和 SSH 相关工具。
- 下载或复制该脚本代码,保存为一个
.sh
文件,例如github_ssh.sh
。
#!/bin/bash echo "本脚本用于快速配置Git SSH连接。" # 设置GitHub的user name和email echo "请输入您的Git用户名:" read git_username git config --global user.name "$git_username" echo "请输入您的Git邮箱:" read git_email git config --global user.email "$git_email" # 生成一个新的SSH密钥 echo "" echo "生成新的SSH密钥..." echo "接下来的输入中,你可以持续的回车" ssh-keygen -t rsa -C "$git_email" # 获取SSH密钥文件路径 ssh_key_path=$(echo ~)/.ssh/id_rsa # 将SSH私钥添加到 ssh-agent echo "" echo "将SSH私钥添加到ssh-agent..." eval "$(ssh-agent -s)" ssh-add "$ssh_key_path" # 将SSH公钥添加到GitHub账户 echo "" echo "将SSH公钥添加到GitHub账户..." ssh_key_pub=$(echo ~)/.ssh/id_rsa.pub if command -v xclip >/dev/null; then echo "复制SSH公钥内容到剪贴板..." xclip -selection clipboard < "$ssh_key_pub" else echo "无法自动复制SSH公钥,请手动复制以下内容:" cat "$ssh_key_pub" fi echo "" echo "请在 Github 页面进行配置" echo "1.请登录GitHub,点击头像,然后在 Settings 页面点击左侧 SSH and GPG keys,随后请点击右上角绿色的 New SSH key。" echo "2.在Title输入框内,为您的新key取个名字,在Key输入框内,粘贴前面复制好的公钥内容,您无需修改 Key type 下拉框,直接点击 Add SSH key 按钮即可。" echo "完成后按任意键继续..." read -n 1 -s # 测试连接 echo "" echo "测试SSH连接..." echo "如果提示你需要继续连接,请输入yes!" ssh -T git@github.com echo "" echo "如果提示中的用户名是您的,说明SSH key已经配置成功。"
- 在终端中,使用
chmod
命令为脚本添加执行权限(windows直接下一步):
chmod +x github_ssh.sh
- 执行脚本:
./setup_git_ssh.sh # windows 下 # 直接在 sh 脚本所在目录右键点击 Open Git Bash Here # 终端输入 bash ./github_ssh.sh
- 根据脚本提示输入相关信息,并按照指引在 GitHub 上完成配置。
- 配置完成后,您可以使用 SSH 连接克隆或推送代码到 GitHub 远程仓库。
通过使用该脚本,您可以快速完成 Git SSH 连接的配置,无需手动执行繁琐的步骤,从而提高效率和便利性。该脚本适合初学者或希望快速配置 Git SSH 连接的用户使用。