78 lines
2.3 KiB
Markdown
78 lines
2.3 KiB
Markdown
# 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)
|