探索云世界
GitHub SSH 快速配置
2024-05-26131
版权
版权声明:
本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《 阿里云开发者社区用户服务协议》和 《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写 侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
简介:这是一个自动化脚本,用于简化设置 Git SSH 连接的过程。功能包括:设置 Git 用户名和邮箱、生成新的 SSH 密钥、将 SSH 私钥添加到 ssh-agent、可选复制 SSH 公钥到剪贴板、提供 GitHub 配置指引以及测试 SSH 连接。用户需确保安装 Git 和 SSH 工具,然后下载脚本并赋予执行权限,按照提示操作即可。适合 Git 初学者或需要快速配置 SSH 的用户。
脚本功能#
-
设置 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/bashecho "本脚本用于快速配置Git SSH连接。"# 设置GitHub的user name和emailecho "请输入您的Git用户名:"read git_usernamegit config --global user.name "$git_username"echo "请输入您的Git邮箱:"read git_emailgit 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-agentecho ""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.pubif command -v xclip >/dev/null; then echo "复制SSH公钥内容到剪贴板..." xclip -selection clipboard < "$ssh_key_pub"else echo "无法自动复制SSH公钥,请手动复制以下内容:" cat "$ssh_key_pub"fiecho ""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.comecho ""echo "如果提示中的用户名是您的,说明SSH key已经配置成功。"
- 在终端中,使用
chmod
命令为脚本添加执行权限(windows直接下一步):
- 执行脚本:
- 根据脚本提示输入相关信息,并按照指引在 GitHub 上完成配置。
- 配置完成后,您可以使用 SSH 连接克隆或推送代码到 GitHub 远程仓库。
通过使用该脚本,您可以快速完成 Git SSH 连接的配置,无需手动执行繁琐的步骤,从而提高效率和便利性。该脚本适合初学者或希望快速配置 Git SSH 连接的用户使用。
目录
相关文章
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
IDEA如何配置git和github
【11月更文挑战第14天】本指南详细介绍了如何在 IntelliJ IDEA 中配置 Git 和 GitHub,包括检查和设置 Git 路径、测试配置,以及通过 SSH 或 HTTPS 方式配置 GitHub 仓库的具体步骤。完成配置后,用户可在 IDEA 中轻松进行版本控制操作。
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文件解决。
【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
热门文章
最新文章
1
Linux查 ssh端口号和服务状态
2
解决 git 报错 “fatal: unable to access ‘https://github.com/.../.git‘: Recv failure Connection was rese
3
在Linux下配置gitee与Github的远程仓库
4
FTP/TFTP/SSH/Telnet
5
在Linux云服务器上限制特定IP进行SSH远程连接的设置
6
关于一些轻量云服务器SSH断连的疑问
7
【工具使用】几款优秀的SSH连接客户端软件工具推荐FinalShell、Xshell、MobaXterm、OpenSSH、PUTTY、Terminus、mRemoteNG、Terminals等
8
[原]Linux ssh远程连接断开问题处理办法
9
简单ssh框架整合
10
使用frp端口映射实现内网穿透(SSH、HTTP服务)
1
全网热议!GitHub发布的最简单的黑客入门教程,你值得拥有!
150
2
网安人必须人手一份的《Linux私房教程》,GitHub星标286K!
189
3
GitHub——README.md挂件如何生成
95
4
斯坦福大学博士在GitHub发布的漫画机器学习小抄,竟斩获129k标星
461
5
爆赞!GitHub首本Python开发实战背记手册,标星果然百万名不虚传
198
6
使用git克隆仓库报错:Warning: Permanently added‘github.com’ to the .....(ssh )
504
7
爆赞!GitHub首本标星120K的Python程序设计人工智能案例手册
219
8
【git】解决git报错:ssh:connect to host github.com port 22: Connection timed out 亲测有效
3759
9
阿里云大牛熬夜整理的Python大数据小抄,GitHub星标125K!
110
10
斯坦福大学博士在GitHub发布的漫画机器学习小抄,竟斩获129k标星
511