# 对 changelog 使用 union 合并策略
# 多个并发 PR 向 [Unreleased] 末尾追加条目时，Git 直接取两边所有行而不产生冲突标记。
# 适用于 append-only 的 changelog 文件。
docs/CHANGELOG.md merge=union

# Documentation image/design assets are binary. Keep GitHub review diffs from
# trying to decode moved binary files as UTF-8.
sources/**/*.ai binary
sources/**/*.gif binary
sources/**/*.ico binary
sources/**/*.jpg binary
sources/**/*.jpeg binary
sources/**/*.png binary
sources/**/*.psd binary
docs/assets/**/*.ai binary
docs/assets/**/*.gif binary
docs/assets/**/*.ico binary
docs/assets/**/*.jpg binary
docs/assets/**/*.jpeg binary
docs/assets/**/*.png binary
docs/assets/**/*.psd binary

# === 强制 LF 的文件类型（内核/系统解释器直接消费） ===
# Shell 脚本（entrypoint.sh、任何 .sh）
*.sh text eol=lf
*.bash text eol=lf

# Dockerfile（包括多阶段或变体）
Dockerfile text eol=lf
Dockerfile.* text eol=lf

# Makefile
Makefile text eol=lf

# 环境变量文件（如果被 shell 直接 source 使用）
.env text eol=lf

# === 新增：二进制文件（禁止 Git 修改换行/编码） ===
# 证书、密钥等（如果有）
*.pem binary
*.crt binary
*.key binary
*.p12 binary