[日常技能] GIT配置SSH KEY并连接GOGS

本文介绍如何在GOGS上配置SSH Key实现无密码提交代码。包括设置Git用户名及邮箱、生成SSH密钥对、添加公钥到GOGS等步骤,并演示本地获取项目的命令及常见操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

GIT配置SSH KEY并连接GOGS

配置git提交的用户名和密码

桌面任意位置右键——git bash here

$ git config --global user.name "Your Name(用户名)"
$ git config --global user.email "email@example.com(邮箱)"

生成ssh公钥和私钥

  1. 打开本地git bash,使用如下命令生成ssh公钥和私钥对
    ssh-keygen -t rsa -C 'xxx@xxx.com'然后一路回车(-C 参数是你的邮箱地址)
  1. 打开 ‘~/.ssh/id_rsa.pub’ 文件 (~表示用户目录,比如我的windows就是C:\Users\tiany),复制其中的内容
  2. 打开GOGS,登录以后 右上角 找到用户中心–>SSH 密钥—>Add SSH Key,并把上一步中复制的内容粘贴到Key所对应的文本框,在Title对应的文本框中给这个sshkey设置一个名字,点击Add key按钮
  3. 到此就完成了gogs配置ssh key的所有步骤,我们就可以愉快的使用ssh协议进行代码的拉取以及提交等操作了
  4. 再试一下拉取代码和提交代码,应该就不需要输入密码了

本地获取项目

git clone www@47.94.160.173:root/ifarm_backend_tj.git

简单操作命令

  1. 本地修改代码
  2. git add -A
  3. git commit -m “新增或修改XXX功能”
  4. git pull (拉取远程最新代码并且尝试执行合并操作)
  5. 如果此时出现冲突,则解决冲突(在idea中或者eclipse中解决即可)
  6. 冲突解决完毕记得使用 git commit 标记冲突解决
  7. git push 推送到远程
### 如何在 Gogs 中添加和配置 SSH 密钥 #### 创建 SSH 密钥 为了能够在 Gogs 上通过 SSH 进行身份验证,首先需要在本地生成一个新的 SSH 密钥对。如果已经存在其他用途的密钥,则建议为 Gogs 单独创建一组新的密钥以避免冲突。 运行以下命令来生成专用于 Gogs 的 RSA 类型密钥: ```bash ssh-keygen -t rsa -f ~/.ssh/id_rsa_gogs -C "你的邮箱地址" ``` 上述命令会在 `~/.ssh/` 文件夹下生成两个文件:`id_rsa_gogs` 和 `id_rsa_gogs.pub`。前者是私钥,后者是公钥[^1]。 #### 查看复制公钥 找到刚刚生成的公钥文件路径 (`~/.ssh/id_rsa_gogs.pub`) 将其内容复制到剪贴板中以便稍后上传到 Gogs: 执行以下命令查看公钥的内容: ```bash cat ~/.ssh/id_rsa_gogs.pub ``` 将显示的结果完整复制下来备用[^2]。 #### 登录 Gogs 账号设置 SSH Key 访问 Gogs 的 Web 界面,在右上角点击头像图标选择 **Settings (个人设置)** -> 左侧菜单栏中的 **SSH Keys** 或者类似的选项名称(具体取决于版本)。接着按提示操作完成新 SSH Key 的录入工作——把之前准备好的公钥粘贴进去即可保存提交[^3]。 #### 修改客户端配置支持多个主机名区分不同服务 为了避免与其他远程仓库连接混淆或者覆盖原有默认行为的情况发生,推荐编辑用户的全局 `.ssh/config` 文件实现更精确控制每种情况下的认证方式。如果没有该文件可以手动建立它;其结构大致如下所示: ```plaintext Host your-gogs-domain.com IdentityFile ~/.ssh/id_rsa_gogs IdentitiesOnly yes # 如果还有其他的常规SSH需求保留这一部分正常定义就好 Host * IdentityFile ~/.ssh/id_rsa_default ``` 这样当向指定域名为目标发起请求时就会自动选用对应的专用密钥而不会误用别的凭据数据了。 #### 测试连通性确认无误 最后一步非常重要也是必不可少的一个环节就是检验整个流程是否顺畅有效果。可以通过尝试简单的 ping 命令模拟实际交互过程看看反馈消息里有没有错误提示信息返回回来作为判断依据之一: ```bash ssh -T git@your-gogs-domain.com ``` 如果一切顺利的话应该能够看到类似于 “Welcome to GitLab, @username!” 字样的欢迎语句证明成功建立了基于 SSH 的安全通道链接关系。 ---
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值