From 1bfda694095cc200ac7eaeac8234d6b34351ce95 Mon Sep 17 00:00:00 2001 From: zepan Date: Wed, 7 Oct 2026 21:43:49 +0800 Subject: [PATCH] chore: add .gitattributes to pin line-ending behaviour MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 本仓库历史上 CRLF 与 LF 混用。用 text=auto 让 git 识别文本文件但 不主动改写已有文件的行尾——全局强制转换会把几万行无关内容塞进 diff,git blame 从此失效。 同时把图片/视频等明确标记为 binary,避免被当作文本做行尾转换 或在 diff 里展开。 批量脚本编辑文档时仍需用 newline='' 保留原始行尾,见 AGENTS.md 「批量处理素材时的纪律」。 --- .gitattributes | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .gitattributes diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..1c759b23 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,25 @@ +# 本仓库历史上同时存在 CRLF 和 LF 的文档,不做全局强制转换, +# 否则一次格式化会把几万行无关内容塞进 diff,git blame 从此失效。 +# +# * text=auto 的含义:让 git 自己判断是否文本文件,但保持各文件 +# 现有的行尾不变(不主动改写已有文件)。批量脚本编辑文档时, +# 读写请用 newline='' 保留原始行尾,详见 AGENTS.md。 + +* text=auto + +# 二进制资源明确标记,避免被当作文本做行尾转换或在 diff 里展开 +*.png binary +*.jpg binary +*.jpeg binary +*.gif binary +*.webp binary +*.bmp binary +*.ico binary +*.mp4 binary +*.webm binary +*.pdf binary +*.zip binary +*.7z binary +*.gz binary +*.bin binary +*.mo binary