.gitattributes文件的相关介绍
一、遇到的问题:
我在重构一个老项目时,在项目中添加了很多.png格式的图片,一开始开发的时候显示是正常的,但是当我把文件上传到git同事再拉下来以后,就会发现图片损坏了!!!这是为什么呢?
后来经过查询资料发现是缺少了.gitattributes文件中的相关配置😭😭😭,只要在.gitattributes文件中加入下面这一行代码,文件上传到git就不会再损坏了!🤩🤩🤩
*.png binary
二、.gitattributes文件是干什么的?
.gitattributes 是一个文本文件,文件中的一行定义一个路径的若干个属性,主要用于定义每种文件的属性,以方便 git
帮我们统一管理。
文件格式选择 属性1 属性2 ...
例如:
* text eol=lf
*.png binary
三、详细内容配置介绍
text:告诉git该文件是否是text
eol:设置行末字符
- eol=lf ,[回车] :入库时将行尾规范为LF,检出时行尾不强制转换为 CRLF
- eol=crlf,[换行、回车] :入库时将行尾规范为LF,检出时将行尾转换为CRLF
binary:告诉git对该类型文件不要进行换行符转换
* text=auto
# 文件的行尾自动转换。如果是文本文件,则在文件入Git库时,行尾自动转换为LF。如果已经在入Git库中的文件的行尾是GRLF,则文件在入Git库时,不再转换为LF。
*.txt text
# 对于.txt文件,标记为文本文件,并进行行尾规范化。
*.jpg -text
# 对于`.jpg`文件,标记为非文本文件
*.vcproj text eol=crlf
# 对于.vcproj文件,标记为文本文件,在文件入Git库时进行规范化,行尾转换为LF。在检测到出工作目录时,行尾自动转换为GRLF。
*.sh text eol=lf
# 对于sh文件,标记为文本文件,在文件入Git库时进行规范化,即行尾为LF。在检出到工作目录时,行尾也不会转换为CRLF(即保持LF)。
*.py eol=lf
# 对于py文件,只针对工作目录中的文件,行尾为LF。