github Actions知识点与git仓库备份实践
github Actions知识点与git仓库备份实践
Github Actions 是 GitHub 推出的持续集成 (Continuous integration , 简称 (I) 服务 , 它提供了配置虚拟服务器环境 , 基于它可以进行构建 、 测试 、 打包 、 部署项目 。
GitHub Actions 为每个任务 (job) 都提供了一个虚拟机来执行 , 每台虚拟机都有相同的硬件资源 :
- 2-core CPU
- 7 GB RA M 内存
- 14 GB SSD 硬盘空间
( 实测硬盘总容量为 90G 左右 , 可用空间为 30G 左右 )
使用限制:
- 每个仓库只能同时支持 20 个 workflow 并行 。
- 每小时可以调用 1000 次 GitHub API 。
- 每个 job 最多可以执行 6 个小时
- 免费版的用户最大支持 20 个 job 并发执行 , macOS 最大只支持 5 个
- 私有仓库每月累计使用时间为 2000 分钟( 超过后 $ 0 , 008 / 分钟 , 公共仓库则无限制 )
配置
核心概念与层次关系:workflow/job/step/action
-
配置路径:.github/workflow/*.yml
-
触发条件 : 仓库事件 、 定时触发 、 手动 、 API
实践:同步GitHub仓库到gitee
此过程通过ssh同步将GitHub仓库同步到gitee,实时备份,可用于GitHub访问速度慢时(你懂的)
1.在gitee上创建同名同类型仓库
2.gitee端新建仓库添加个人公钥
在终端产生一对私钥和公钥
gitee填写个人公钥:
3.在github端填写填写刚刚产生的私钥:
记住该私钥名字,下面actions配置中会用到
4.在github需要同步的仓库设置里添加公钥:
5.在github端设置gitaction
图中标记1即上述在github中添加的私钥(钥匙)
图中标记2为同步源仓库
图中标记3为目标仓库
点击commit后回到仓库actions中可看到同步任务已开始
至此在GitHub上push后就会触发自动同步到gitee了