release: v1.0.0

This commit is contained in:
2026-05-16 17:34:32 +08:00
commit 2f521deff8
15 changed files with 4718 additions and 0 deletions

View File

@@ -0,0 +1,77 @@
# RELEASE.md — 目录树生成脚本 v1.0.0
## 发布信息
| 项目 | 值 |
|------|------|
| **项目名称** | 目录树生成脚本 |
| **项目 ID** | PROJ-20260509011 |
| **版本** | 1.0.0 |
| **发布日期** | 2026-05-16 |
| **Git 标签** | v1.0.0 |
| **提交 Hash** | c278c5a |
| **Gitea 仓库** | https://git.cclee.wiki/GoudanLabs/tree-generator |
---
## 功能清单
| 编号 | 功能 | 状态 |
|------|------|------|
| F013 | 生成目录树(├── / └── 格式,目录在前文件在后,字母排序) | ✅ 通过 |
| F014 | 生成文件列表(-f 参数) | ✅ 通过 |
| F015 | 忽略配置(内置 30+ 种模式 + .treeignore 自定义) | ✅ 通过 |
| F016 | 深度限制(-d 参数) | ✅ 通过 |
| F017 | Markdown 导出(默认 tree_output.md可自定义路径 | ✅ 通过 |
| F018 | 统计信息(目录数、文件数、总大小 B/KB/MB/GB | ✅ 通过 |
| F019 | 循环检测(基于 inode 的符号链接循环检测) | ✅ 通过 |
| F020 | 权限处理(无权限目录显示 [Permission denied],不中断) | ✅ 通过 |
**测试结果8/8 通过**
---
## 已知问题
| 问题 | 描述 | 影响 | 优先级 |
|------|------|------|--------|
| `-d 1` 深度限制异常 | 当 `-d` 参数为 1 时,由于 `depth >= MAX_DEPTH` 的判断逻辑,根目录下的子目录内容会被跳过,但根目录本身仍显示。在 `-d 1` 时表现为只显示根目录名,不显示任何子项。 | 边缘场景,正常使用 -d 2+ 无影响 | 低 |
---
## 升级说明
### v1.0.0(首次发布)
- 初始版本
- 纯 Bash 实现,零外部依赖
- 支持 Linux 和 macOS
- 内置 30+ 种常见忽略模式
- 支持 `.treeignore` 自定义忽略配置
- 基于 inode 的符号链接循环检测
- Markdown 导出 + 终端输出双模式
- 自动统计目录数、文件数和总大小
---
## 文件清单
### dist/
- `tree.sh` — 主脚本(可执行)
### source/
- `tree.sh` — 源码
- `README.md` — 完整文档
- `tree_architecture_design.md` — 架构设计文档
### docs/
- `README.md` — 完整使用说明
- `QUICKSTART.md` — 快速入门指南
---
## 环境要求
- **操作系统:** Linux 或 macOS
- **Shell** Bash 4.0+
- **依赖:** 无仅使用标准工具stat, awk, basename, dirname, mkdir