如何在GitLab中配置.gitattributes仅对文本文件生效EOL=CRLF
解决方案
可用.gitattributes配置
直接在仓库根目录创建/编辑.gitattributes文件,写入以下内容即可:
# 启用Git内置内容检测,自动判定文件为文本/二进制 * text=auto # 仅对识别为文本的文件应用CRLF行尾规则,二进制文件自动忽略该规则 * eol=crlf
规则生效逻辑
* text=auto为最高优先级规则,Git会基于文件内容而非后缀名做二进制识别,确认是二进制的文件会自动跳过所有行尾转换逻辑- 同后缀名的文件不会被统一处理:内容为文本的会正常应用CRLF行尾规则,内容为二进制的会保留原有格式,不会被修改
- 规则对未来新增的所有文件自动生效,不需要逐一定义规则
适配你的权限限制说明
- 仅需要修改仓库内的
.gitattributes文件,无需改动GitLab实例核心配置,符合权限要求 - 所有操作可以直接通过GitLab Web UI完成:进入仓库根目录,点击新建文件,命名为
.gitattributes,粘贴上述配置后提交即可,不需要终端权限
例外处理
如果出现个别文件识别不符合预期,可以单独追加规则手动修正,示例如下:
# 手动标记指定文件为二进制,不做行尾转换 异常识别的文件.dat binary # 手动标记指定文本文件使用LF行尾(如有特殊需求) linux专用配置.conf eol=lf
内容的提问来源于stack exchange,提问作者Harrison
相关产品推荐
相关产品推荐

