安装gitea
安装完成后,你会进入类似这样的界面。先注册,再登录。
登录后会进入主页,其中包括gitea服务的设置以及仓库的管理。
点击组织下的加号+
用于创建仓库
仓库是git最核心的部分,是代码存储和迭代的容器。
创建仓库后,进入仓库如下。它类似于gitee和github。用户界面非常简单实用。
构建仓库后就和使用gitee和github方式一样了,通过git命令git clone
,git pull
拉取代码和上传代码。
首先,需要在本地构建git仓库并配置仓库,这与初始化gitee仓库完全相同。
git iit
初始化
git remote add
添加远程仓库
git add .
添加文件到工作区
git commit -m ""
添加文件到暂存区
git push
推送到远程仓库
这一步仍然需要输入密码。输入注册的gitea账号和密码。至此,git仓库已经搭建完毕,可以实现基本的git仓库管理和版本迭代了。
远程访问
伤害操作都是可视化操作,需要人工点击,比如创建仓库、删除仓库等,在实现自动化的时候,需要通过代码来实现。
gitea还提供基于http服务的API,用于自动化仓库和账户管理。
按照接口的规范请求gitea地址就可以实现对gitea仓库的管理。那么在实际使用时只需要对相应的api访问请求就可以自动创建仓库,自动删除仓库实现自动化。
在获取存储库获取指定仓库的请求中,明确的介绍了请求需要的参数以及请求成功后返回的数据。
进入服务器搭建的gitea服务,划到最底部,如下图,点击api
您将进入用户构建的gitea API。这些API使用swagger的方式展示,可以方便的找到需要指定的API接口。
例如之前的get a repository接口显然在repository路径下
输入仓库拥有者和仓库名,进行查找
如上图所示成功返回数据,包含了test1仓库的所有信息。
然后使用api搭建仓库
请求参数的具体意义请参考官网。填写参数后发送请求,却并未构建成功,出现了"message": "token is required"
的字样。
出现此信息的原因是仓库的修改或创建等重要信息需要授权。这是必须的,不然任何人都可以修改仓库,那就混乱了。
gitea提供了三种授权方式,如下:
提供4种认证方式。最常用的是第四种。在请求头中添加如下配置。
Authorization: token 65eaa9c8ef52460d22a93307fe0aee76289dc675
如何获取token的价值?
gitea登录后进入首页,点击用户头像
点击设置,点击应用,点击生成令牌
就会得到一串token,请求将该token携带后就可以对api访问了。
核实:
调用删除仓库接口
返回token is required
,生成token配置到请求头上
看API,删除请求只有两个路径参数,一个是仓库所有者,一个是仓库名称。
按照api的规范请求,如下所示
需要注意的该接口为
delete
方法,注意405错误,另外该接口为空返回,返回状态码为204,不是200,也就是返回为204表示请求成功了。
回到首页发现test1仓库已经被删除。
注意token的写法
Authorization: token 65eaa9c8ef52460d22a93307fe0aee762875
Authorization
是key,65eaa9c8ef52460d22a93307fe0aee762875
是值,且值前面必须加token和一个空格
同理gitea的其他接口也是需要token的,那么要实现自动化所有账户都要一个token,那么对不同求的api重写得到一个token是不合理的(每个请求换一个token值)。gitea在创建之处就有一个root
用户,使用该用户创建的api可以所有账户的仓库操作,因为账户是唯一的,所有不存在重复的情况。
自动化构建过程中,普通账户用户管理仓库,root用户管理账户。
其他API只要携带Token并遵循官网提供的API规范即可访问。请参考官方文档。
Gitea 的管理员帐户拥有所有普通 Gitea 帐户的管理权限。作为管理员,您可以执行以下操作:
- 创建、编辑和删除常规 Gitea 帐户。
- 管理用户权限,包括访问仓库、创建组织、管理团队等。
- 修改用户个人设置和配置。
- 查看和管理用户活动记录和日志。
- 监控和管理服务器的整体状态和性能。
- 管理员帐户还可以执行其他高级操作,例如备份和恢复数据、配置全局设置等。
Gitea管理员的API令牌可以访问普通用户的API。作为管理员,您可以使用管理 API 令牌执行以下操作:
- 获取和管理所有用户的信息,包括用户名、电子邮件、组织等。
- 获取和管理所有仓库的信息,包括创建、编辑、删除仓库等。
- 管理用户权限,包括添加、删除、修改用户访问权限。
- 查看和管理用户活动记录和日志。
- 执行其他高级操作,例如备份和恢复数据、配置全局设置等。
请注意,管理员帐户拥有最高权限,因此请谨慎使用这些权限,并且仅将管理员权限授予受信任的用户。