GitHub SSH 快速配置

简介: 这是一个自动化脚本,用于简化设置 Git SSH 连接的过程。功能包括:设置 Git 用户名和邮箱、生成新的 SSH 密钥、将 SSH 私钥添加到 ssh-agent、可选复制 SSH 公钥到剪贴板、提供 GitHub 配置指引以及测试 SSH 连接。用户需确保安装 Git 和 SSH 工具,然后下载脚本并赋予执行权限,按照提示操作即可。适合 Git 初学者或需要快速配置 SSH 的用户。

脚本功能#

  1. 设置 Git 用户名和邮箱
    脚本会提示用户输入 Git 用户名和邮箱,并将其设置为全局配置。
  2. 生成新的 SSH 密钥
    脚本会自动生成新的 SSH 密钥对(私钥和公钥),用于与 GitHub 建立安全连接。在生成过程中,用户可以持续按回车键使用默认设置。
  3. 将 SSH 私钥添加到 ssh-agent
    脚本会自动将生成的 SSH 私钥添加到 ssh-agent 中,以便在后续推送或拉取代码时无需每次手动输入密钥。
  4. 将 SSH 公钥复制到剪贴板(可选)
    如果用户的系统安装了 xclip 工具,脚本会尝试自动将 SSH 公钥内容复制到剪贴板,方便用户在 GitHub 上配置。如果系统未安装 xclip,脚本会输出公钥内容,提示用户手动复制。
  5. 提供 GitHub 配置指引
    脚本会给出在 GitHub 上添加 SSH 公钥的详细步骤,引导用户完成配置。
  6. 测试 SSH 连接
    最后,脚本会尝试通过 SSH 连接到 GitHub,验证配置是否成功。如果连接成功,将输出相应的提示信息。

使用方式#

  1. 确保您的系统已安装 Git 和 SSH 相关工具。
  2. 下载或复制该脚本代码,保存为一个 .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已经配置成功。"
  1. 在终端中,使用 chmod 命令为脚本添加执行权限(windows直接下一步):
chmod +x github_ssh.sh
  1. 执行脚本:
./setup_git_ssh.sh
# windows 下
# 直接在 sh 脚本所在目录右键点击 Open Git Bash Here
# 终端输入 bash ./github_ssh.sh
  1. 根据脚本提示输入相关信息,并按照指引在 GitHub 上完成配置。
  2. 配置完成后,您可以使用 SSH 连接克隆或推送代码到 GitHub 远程仓库。

通过使用该脚本,您可以快速完成 Git SSH 连接的配置,无需手动执行繁琐的步骤,从而提高效率和便利性。该脚本适合初学者或希望快速配置 Git SSH 连接的用户使用。

相关文章
|
25天前
|
Linux 网络安全 开发工具
IDEA如何配置git和github
【11月更文挑战第14天】本指南详细介绍了如何在 IntelliJ IDEA 中配置 Git 和 GitHub,包括检查和设置 Git 路径、测试配置,以及通过 SSH 或 HTTPS 方式配置 GitHub 仓库的具体步骤。完成配置后,用户可在 IDEA 中轻松进行版本控制操作。
|
2月前
|
JavaScript Linux Windows
Typora图床配置(用自带的 PicGo-Core(command line) 插件GitHub
Typora图床配置(用自带的 PicGo-Core(command line) 插件GitHub
|
4月前
|
网络协议 Shell 网络安全
ssh: connect to host github.com port 22: Connection refused
本文讨论了在使用Git命令操作GitHub时遇到的"ssh: connect to host github.com port 22: Connection refused"错误,分析了可能的原因,并提供了使用443端口或https协议作为解决方案,最终确定问题是由于DNS解析错误导致,通过修改hosts文件解决。
ssh: connect to host github.com port 22: Connection refused
|
4月前
|
安全 网络协议 Shell
Github代码仓库SSH配置流程
这篇文章是关于如何配置SSH以安全地连接到GitHub代码仓库的详细指南,包括使用一键脚本简化配置过程、生成SSH密钥对、添加密钥到SSH代理、将公钥添加到GitHub账户以及测试SSH连接的步骤。
86 0
Github代码仓库SSH配置流程
|
4月前
|
网络安全 开发工具 git
拉取 gitee 代码,配置SSH,Please make sure you have the correct access rights
拉取 gitee 代码,配置SSH,Please make sure you have the correct access rights
72 1
|
4月前
|
Shell 网络安全 开发工具
Gerrit✨Gerrit服务器简介 与 配置SSH keys
Gerrit✨Gerrit服务器简介 与 配置SSH keys
|
4月前
|
网络安全 Windows
在Windows电脑上启动并配置SSH服务
在Windows电脑上启动并配置SSH服务
904 0
|
4月前
|
Linux C++ Docker
【Azure Developer】在Github Action中使用Azure/functions-container-action@v1配置Function App并成功部署Function Image
【Azure Developer】在Github Action中使用Azure/functions-container-action@v1配置Function App并成功部署Function Image
|
4月前
|
Ubuntu Shell 网络安全
【Ubuntu】配置SSH
【Ubuntu】配置SSH
108 0
|
4月前
|
安全 Linux 网络安全
在Linux中,如何配置SSH以确保远程连接的安全?
在Linux中,如何配置SSH以确保远程连接的安全?