fossil scm中添加忽略文件或文件夹
在 Fossil 中忽略文件/文件夹,核心是配置 ignore-glob,支持命令行临时设置和版本化文件持久化两种方式。
一、命令行设置(临时/本地)
用 fossil set 配置 ignore-glob,支持逗号分隔的通配符(glob)规则。
1. 基础用法
# 忽略所有 .log 文件、build/ 目录、临时文件 *.tmp
fossil set ignore-glob "*.log, build/, *.tmp"
# 查看当前忽略规则
fossil set ignore-glob
2. 常用 glob 规则
*.log:忽略所有.log文件build/:忽略build目录及所有子内容temp/*:忽略temp目录下所有文件(不递归子目录)**/node_modules:忽略所有层级的node_modules目录*.o, *.obj:忽略编译产物
3. 追加规则(不覆盖)
# 追加忽略 .env 文件
fossil set ignore-glob "$(fossil set ignore-glob), .env"
二、版本化文件(推荐,团队共享)
在仓库根目录创建 .fossil-settings/ignore-glob 文件,每行一个规则,提交后全团队生效。
1. 操作步骤
# 1. 创建目录(不存在时)
mkdir -p .fossil-settings
# 2. 编辑忽略规则文件
cat > .fossil-settings/ignore-glob << 'EOF'
*.log
build/
*.tmp
.env
**/node_modules
EOF
# 3. 提交到仓库(共享给团队)
fossil add .fossil-settings/ignore-glob
fossil commit -m "Add ignore rules"
2. 优先级
.fossil-settings/ignore-glob > 命令行 fossil set ignore-glob。
三、验证忽略规则
用 fossil extras 查看未被跟踪且未被忽略的文件,验证规则是否生效。
# 查看所有未跟踪文件(排除 ignore-glob)
fossil extras
# 临时覆盖 ignore-glob,查看所有未跟踪文件(含被忽略的)
fossil extras --override-ignore-glob
四、强制添加已忽略文件
默认 fossil add 会跳过 ignore-glob 匹配项,用 --force 强制添加。
fossil add --force build/important.log
五、常见场景示例
1. 忽略编译产物
# 命令行
fossil set ignore-glob "*.o, *.obj, *.exe, build/, dist/"
# 或 .fossil-settings/ignore-glob
*.o
*.obj
*.exe
build/
dist/
2. 忽略 IDE/编辑器配置
.vscode/
.idea/
*.swp
*.swo
.DS_Store
3. 忽略环境文件
.env
.env.local
.env.*.local
需要我帮你生成一份适用于前端/后端项目的通用 .fossil-settings/ignore-glob 模板吗?

浙公网安备 33010602011771号