文件
workbuddy-portal/.gitignore
T
wangchuanli 1bf961f6b3 feat(权限): 收敛普通账号写权限至本人凭证
将调度时刻、采集参数等实例级配置收归管理员,普通账号仅可维护本人 Cookie 与 User-Agent。
新增 config.writable_by 作为唯一写权限入口,set_setting 强制全局键落到 user_id=0,
消除「管理员改了只有自己生效」的静默缺陷。新增 tools/check_docs.py 文档自检,
smoke 断言扩至 215 项、check_live 扩至 122 项并支持普通账号越权验收,
忽略 backups/、data/*.bak* 与 legacy-v1/,版本升至 v1.3.0。
2026-09-18 08:46:00 +08:00

74 行
2.1 KiB
Plaintext
原始文件 Blame 文件历史

此文件含有模棱两可的 Unicode 字符
此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。
# =============================================================================
# 注意:Git 的 .gitignore **不支持行尾注释**——规则后面跟 # 注释会让整行变成
# 一个永远匹配不上的模式(曾经因此把 data/instance.json 误入库)。
# 注释一律单独占一行。
# =============================================================================
# ---- 数据与运行产物:正本不进版本库(体积大、含凭证衍生物)----
# 同时写 data/* 与 data/**/* 两种:只写前者会漏掉子目录
# (曾因此让 data/demo/usage.sqlite 逃过忽略规则)
data/*.sqlite
data/*.sqlite-wal
data/*.sqlite-shm
data/**/*.sqlite
data/**/*.sqlite-wal
data/**/*.sqlite-shm
# 含 secret_key,泄露等于会话签名密钥外泄,绝不可提交
data/instance.json
data/**/instance.json
data/exports/*.csv
# 兜底:手工 cp 出来的快照(如 usage.sqlite.bak-pre-v13)绝不能入库,
# 它含 settings 的凭证密文与 users 的密码哈希
data/*.bak*
data/*.sqlite-bak*
# 界面截图(tools/shots.py 生成的临时产物;手册配图在 docs/images/)
data/shots/
# 示例数据(tools/demo_data.py 生成,随时可重建,不必入库)
data/demo/
# ---- 日志 ----
logs/*
# ---- 数据库备份 ----
# 全目录忽略,只放行说明文件。备份含凭证密文与密码哈希,永不入库。
# 刻意不放在 data/:data/ 是 Docker 卷,down -v 会把备份和正本一起删掉。
backups/*
!backups/README.md
!backups/.gitkeep
# ---- v1.0 旧版归档 ----
# 若仓库被整体移到工作区根,legacy-v1/(含真实 CSV)必须继续被忽略
legacy-v1/
# ---- 保留目录本身 ----
# docker-compose 是绑定挂载,宿主机目录必须先存在,
# 否则 Docker 会以 root 自动创建,Linux 上会引发「unable to open database file」
!data/.gitkeep
!data/exports/.gitkeep
!logs/.gitkeep
# ---- Python ----
__pycache__/
*.py[cod]
*.egg-info/
.venv/
venv/
# ---- 编辑器 / 系统 ----
.idea/
.vscode/
*.swp
.DS_Store
Thumbs.db
# ---- 部署本地配置(含明文密码,只提交 .env.example)----
.env
.env.local
.env.*.local
compose.override.yml