GitLab教程(一):安装Git、配置SSH公钥
TracyCoder123 2024-07-03 17:07:02 阅读 65
文章目录
序一、Git安装与基本配置(Windows)下载卸载安装基本配置
二、SSH密钥配置
序
为什么要使用代码版本管理工具:
最近笔者确实因为未使用代码版本管理工具遇到了一些愚蠢的问题,笔者因此认为代码版本管理工具对于提高团队协作效率非常有帮助。
使用代码版本管理工具可以提高团队的协作效率,降低代码丢失的风险。在没有版本管理工具的情况下,如果多个开发人员同时修改同一个文件,可能会导致代码的丢失或覆盖;难以跟踪每个人的更改、合并不同分支的代码以及解决代码冲突,这会导致团队之间的沟通和合作问题;当出现问题或错误时很难追踪其源头;无法轻松地备份和恢复代码。
GitLab和Github的区别:
GitLab可能更适合企业或团队,以及需要更多项目管理和扩展功能的场景;GitHub更适合个人开发者或开源项目,用户可以更好地参与社区和分享代码。此外,在中国地区,GitLab相比Github在网络连接上更加稳定,笔者使用Github十次有九次都会连接失败,但是使用Gitlab却不会,这是笔者选择Gitlab的主要原因。
一、Git安装与基本配置(Windows)
参考:https://docs.gitlab.com/ee/topics/git/how_to_install_git/index.html
下载
官网下载地址:https://git-scm.com/download/win
卸载
由于我已经安装了Git,为了展示完整的过程,我先把它卸载了:
<code>1 删除相关环境变量
2 控制面板中卸载Git工具
安装
打开下载的安装包,除了安装目录自定义和默认分支设置为main,其余的无脑下一步安装。
安装好后会有三个工具可供使用,Git Bash是linux风格的命令行, 最常用 ;Git CMD是windows风格的命令行;Git GUI是图形化操作界面。
基本配置
直接操作配置文件即可:
D:\setup\Git\etc\gitconfig 安装目录下的配置是系统配置
C:\Users\电脑用户名.gitconfig 用户目录下的配置是用户全局配置
配置gitlab/github用户名和邮箱:
<code>[user]
name = Your Name
email = your.email@example.com
另外还可以使用命令行工具如Git Bash运行以下命令来配置Git:
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
验证配置是否生效:
在终端执行命令git config --list
即可验证。
二、SSH密钥配置
简单来说,远端的GitLab使用SSH协议与本地Git进行安全通信。
SSH密钥生成:
在本地终端运行以下命令:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
ssh-keygen:这是SSH密钥生成器的命令。
-t rsa:这是指定要生成的密钥类型,这里选择了RSA算法。RSA是一种非对称加密算法,常用于生成SSH密钥对。
-b 4096:这是指定密钥的位数,这里选择了4096位。较长的密钥位数提供更高的安全性,但也需要更长的时间来生成和处理。
-C “your_email@example.com”:这是指定注释,通常是关联密钥的电子邮件地址。注释是可选的,但是添加一个描述性的注释可以帮助我们标识密钥的用途和所有者。
该命令将生成一个RSA密钥对,并将私钥保存在本地的C:\Users\14095/.ssh/id_rsa
目录下,公钥则保存在同一目录的id_rsa.pub
中。
公钥添加到GitLab: 先选择Gitlab左侧边栏的SSH选项,然后点击Add new key,粘贴公钥并保存。
SSH通信建立: 当我们使用SSH URL(例如git@gitlab.com:your_username/your_repository.git
)进行Git操作时,本地Git会通过SSH与GitLab进行通信。
通过使用SSH进行通信,可以在本地和GitLab之间进行安全的Git操作,而无需每次都输入用户名和密码。此外,SSH还提供了对数据传输的加密,以保护代码和敏感信息。
下面来验证一下ssh密钥是否成功配置:
在本地终端执行命令即可验证ssh是否成功配置:
ssh -T git@gitlab.com
上一篇: 《DNK210使用指南 -CanMV版 V1.0》第八章 CanMV IDE初体验
下一篇: Docker一键快速私有化部署(Ollama+Openwebui) +AI大模型(gemma,llama2,qwen)20240417更新
本文标签
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。