1、Gitea启用内置SSH {#1%E3%80%81gitea%E5%90%AF%E7%94%A8%E5%86%85%E7%BD%AEssh}
1.1、更改配置文件 {#1.1%E3%80%81%E6%9B%B4%E6%94%B9%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6}
- 配置文件位置
装载路径:/data/gitea/conf/app.ini
(按照自己映射路径寻找/gitea/conf/app.ini
),下载此文件到本地;
-
找到[server]配置节点,修改以下信息项;
-
修改配置节:
SSH_DOMAN = 与http访问的域名配置一样即可
,只需写域名,无需http以及端口号等; -
修改配置节:
DISABLE_SSH = false
; -
修改配置节:
SSH_PORT = 预期的端口
,此端口需要在路由器做转发,即外网连接SSH时的端口; -
修改配置节:
SSH_LISTEN_PORT = 22
,必须是22,不可修改,配置文件修改此端口无效不清楚是否为gitea的bug,所以不建议修改;
1.2、重新编辑容器,增加SSH的端口映射 {#1.2%E3%80%81%E9%87%8D%E6%96%B0%E7%BC%96%E8%BE%91%E5%AE%B9%E5%99%A8%EF%BC%8C%E5%A2%9E%E5%8A%A0ssh%E7%9A%84%E7%AB%AF%E5%8F%A3%E6%98%A0%E5%B0%84}
- 容器端口 :
22
,本地端口 :SSH_PORT
使用的端口。
2.SSH密钥 {#2.ssh%E5%AF%86%E9%92%A5}
2.1、SSH密钥生成 {#2.1%E3%80%81ssh%E5%AF%86%E9%92%A5%E7%94%9F%E6%88%90}
要使用 SSH 拉取 Gitea 仓库,您需要先生成 SSH 密钥对,并将公钥添加到 Gitea 的账户设置中。
以下是一些步骤来帮助您使用 SSH 拉取 Gitea 仓库:
-
生成 SSH 密钥对:
-
打开终端或命令提示符窗口。
-
运行以下命令来生成 SSH 密钥对,注意修改邮箱:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
-
按照提示输入文件名(可选),可输入全路径:
C:\Users\{电脑用户名}\.ssh\{文件名,修改的部分}
; -
按照提示输入密码(可选),设置可更安全。
-
-
添加公钥到 Gitea:
-
登录到 Gitea 的网站。
-
点击右上角的用户头像,选择 "Settings"。
-
在左侧导航栏中选择 "SSH / GPG Keys"。
-
点击 "New SSH Key"。
-
在 "Title" 字段中输入一个描述性的名称。
-
打开终端或命令提示符窗口,运行以下命令来获取公钥内容,若修改了文件名则
id_rsa.pub
需要修改为对应文件名.pub
:cat ~/.ssh/id_rsa.pub
-
将输出的公钥内容复制到 "Key" 字段中。
-
点击 "Add Key"。
-
-
拉取 Gitea 仓库:
-
打开终端或命令提示符窗口。
-
进入您想要存储仓库的目录。
-
运行以下命令来克隆仓库:
git clone git@gitea.example.com:username/repository.git
-
将 "gitea.example.com" 替换为您的 Gitea 服务器地址,"username" 替换为您的用户名,"repository.git" 替换为您要克隆的仓库名称。
-
现在您应该可以使用 SSH 拉取 Gitea 仓库了。记得在拉取之前,确保您已经具有访问权限。
2.2、git工具包 {#2.2%E3%80%81git%E5%B7%A5%E5%85%B7%E5%8C%85}
- 建议使用123云盘下载,若遇下载缓慢拥堵情况时可以使用智识家 - 云盘,注意:智识家 - 云盘流量耗尽时无法下载,流量每月重置。
123云盘: https://www.123pan.com/s/argRVv-1bvAd.html
提取码:
zxXs
3、常见问题 {#3%E3%80%81%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98}
3.1、 TortoiseGit 客户端将远程代码 Pull 到本地的时候,出现异常 {#3.1%E3%80%81-tortoisegit-%E5%AE%A2%E6%88%B7%E7%AB%AF%E5%B0%86%E8%BF%9C%E7%A8%8B%E4%BB%A3%E7%A0%81-pull-%E5%88%B0%E6%9C%AC%E5%9C%B0%E7%9A%84%E6%97%B6%E5%80%99%EF%BC%8C%E5%87%BA%E7%8E%B0%E5%BC%82%E5%B8%B8}
在使用 TortoiseGit 客户端将远程代码 Pull 到本地的时候,出现异常,Pull 失败,并提示错误信息 " Disconnected: No supported authentication methods available(server sent: publickey) " 。
-
必须先安装GIT套件,建议安装最新版本;
-
打开桌面版本git的设置页面,找到
网络 - SSH
; -
浏览查找
Git桌面命令行工具(Git-2.41.0.3-64-bit.exe)
安装目录下的\usr\bin\ssh.exe
工具,保存即可; -
关闭已打开的git窗口,重新拉取即可。
3.2、多台电脑共用SSH Public/Private Key {#3.2%E3%80%81%E5%A4%9A%E5%8F%B0%E7%94%B5%E8%84%91%E5%85%B1%E7%94%A8ssh-public%2Fprivate-key}
-
将已有公钥和私钥电脑
C:\Users\{电脑用户名}\.ssh
文件夹下全部文件复制到新电脑的C:\Users\{电脑用户名}\.ssh
文件夹下,新电脑若没有.ssh
目录时,需要新建目录; -
此时新电脑可以使用公钥拉取代码。