用途:该技能提供 Git 行尾配置的综合指导,面向跨平台开发团队,用于配置行尾、设置 .gitattributes、排查行尾问题、理解 core.autocrlf/core.eol/core.safecrlf、配合 Git LFS、在仓库中规范化行尾,以及解决跨平台行尾冲突,覆盖 Windows、macOS、Linux 和 WSL。
主要能力:解释行尾类型(LF \n、CRLF \r\n、CR \r)及其影响,如 shell 脚本无法执行(^M: bad interpreter)、整文件差异、文件损坏、构建失败与合并冲突。梳理 Git 三层处理机制:配置项、.gitattributes(最高优先级)、手动规范化(git add --renormalize)。提供决策树、工作流、最佳实践与现实场景。
使用方式(保留原文命令):Windows 传统配置 git config --global core.autocrlf true 与 git config --global core.safecrlf warn;Mac/Linux 使用 git config --global core.autocrlf input 与 git config --global core.safecrlf warn。现代显式方案为所有平台 git config --global core.autocrlf false、git config --global core.eol native、git config --global core.safecrlf warn,但需配套完整 .gitattributes。最小 .gitattributes 为 * text=auto;可为 .sh 指定 text eol=lf,为 .ps1/.cmd/.bat 指定 text eol=crlf,二进制文件标记 binary。排查常用:git ls-files --eol、git check-attr -a、git config --list --show-origin、git add --renormalize .。
适用场景:内部与外部混合仓库、新仓库或已有仓库、团队入职配置、Git LFS 配合使用等。选择建议:若无法控制所有仓库,使用传统方案;若完全掌控所有仓库并确保完整 .gitattributes,可使用现代显式方案。
限制:现代显式方案缺少 .gitattributes 时会失效,且对外部仓库不安全。Git LFS 与行尾配置相互独立。资料未提供具体收费标准、价格及平台支持范围等信息。