diff --git a/README.md b/README.md index 4a0b021..7dda688 100644 --- a/README.md +++ b/README.md @@ -1 +1,57 @@ -# 缓存插件 \ No newline at end of file +# 缓存插件 + +这是一个Gitea Actions缓存插件,用于在CI/CD流程中缓存指定目录,以提高构建效率,减少重复下载和计算时间。 + +## 功能特点 + +- 支持多目录缓存 +- 基于文件哈希自动更新缓存 +- 支持不同操作系统环境 +- 提供缓存命中状态输出 + +## 输入参数 + +| 参数名 | 必需 | 描述 | 默认值 | +|-------|------|------|-------| +| key | 是 | 缓存压缩标识 | `${{ gitea.repository }}` | +| mount | 是 | 挂载缓存目录(支持多行输入) | - | +| hash_files | 否 | 缓存命中文件(支持多行输入,用于生成哈希) | - | + +## 输出参数 + +| 参数名 | 描述 | +|-------|------| +| cache_init | 是否缓存命中("true"或"false") | + +## 使用示例 + +```yaml +- name: 缓存依赖 + uses: actions/cache@master + with: + key: node-modules + mount: | + node_modules + hash_files: | + package.json + yarn.lock +``` + +## 工作原理 + +1. **恢复缓存(restore)**:在作业开始时,根据提供的key和hash_files生成缓存键,尝试恢复缓存 +2. **保存缓存(save)**:在作业成功完成后,如果缓存未命中或内容发生变化,则保存新的缓存 + +缓存键生成规则:`${操作系统}-${key}-${文件哈希值}` + +## 安装和构建 + +```bash +# 安装依赖 +yarn install + +# 构建插件 +yarn build +``` + +构建后的文件将输出到`dist/restore/`和`dist/save/`目录中。 \ No newline at end of file