docs: establish GSRL v1.0 release convention
This commit is contained in:
41
README.md
Normal file
41
README.md
Normal file
@@ -0,0 +1,41 @@
|
||||
# GSRL — Global Source Release Lock
|
||||
|
||||
**全局源码发行规范 v1.0**
|
||||
|
||||
GSRL 是一套适用于**所有独立 Git 项目**的轻量发行约定,不是程序、包管理器或集中管理平台。无论项目使用哪种语言、运行在哪台设备、是否与 NavSea 有关,都遵守相同的正式交付规则。
|
||||
|
||||
## 核心规则
|
||||
|
||||
1. **日常开发自由**:普通改代码、调试、实验不强制执行 GSRL。
|
||||
2. **交付方负责发行**:正式交付前,确认源码已 Commit / Push、可从 Git 恢复,并发布附有 `SOURCE_LOCK.json` 的固定版本。
|
||||
3. **使用方负责验收**:只从项目公布的发行入口选择版本,检查 Source Lock、依赖、使用说明,并重新计算收到文件的 SHA-256。
|
||||
4. **版本不得偷换**:同一正式版本不得改为不同的代码或交付文件;内容变化就发布新版本。
|
||||
|
||||
## 每个项目的发行入口
|
||||
|
||||
每个独立 Git 项目自行维护 `release/README.md`,列明**版本系列、推荐版本、下载地址、兼容性与使用方法**。发行包可以放在项目 Git、Gitea Releases 或其他稳定文件服务器,不要求大文件进入 Git。
|
||||
|
||||
示意目录:
|
||||
|
||||
```text
|
||||
project/
|
||||
└── release/
|
||||
├── README.md # 版本目录与取用说明
|
||||
├── 1.0.0/
|
||||
│ ├── SOURCE_LOCK.json # 本次发行的来源与校验记录
|
||||
│ └── 使用说明.md
|
||||
└── 1.1.0/
|
||||
├── SOURCE_LOCK.json
|
||||
└── 使用说明.md
|
||||
```
|
||||
|
||||
一个仓库发行多个组件时,可按 `release/<组件名>/<版本>/` 组织。单个 APK、AAR、数据包等产物可以把 `SOURCE_LOCK.json` 作为伴随文件提供。
|
||||
|
||||
## 规范与示例
|
||||
|
||||
- [GSRL.md](GSRL.md):正式规则和交付/接收验收标准
|
||||
- [SOURCE_LOCK.example.json](SOURCE_LOCK.example.json):最小 Source Lock 格式示例(占位符不是实际发行)
|
||||
|
||||
**本仓库**:https://git.eyaku.jp/tei/GSRL
|
||||
|
||||
本仓库公开可阅读;修改与发布规范必须使用获得授权的 Git/Gitea 账号。采用 GSRL 的其他项目**无需公开其自身代码或发行包**。
|
||||
Reference in New Issue
Block a user