我有两个文件显示为“已修改”,即使它们没有显示。我确定的原因是因为如果我克隆存储库,则远程和本地之间不应有任何更改。是不是
现在,我知道我有一个.gitattributes
文件:
#
# Set the default behavior, in case people don't have core.autocrlf set
* text eol=lf
#
# Denote all files that are truly binary and should not be modified
*.gif binary
*.ico binary
...这迫使LF
(UN * X)的行尾,我知道我的文件是CRLF
(Windows),但是同样,当我第一次克隆存储库时,它们之间应该没有任何区别,尽管我知道该文件是在checkout
强加给它的。
因此,有什么办法可以告诉我.gitattributes
不要在意几个文件,例如:
src/main/resources/db/migration/V1__sample01.sql text eol=crlf
注意:我无法删除文件并重新创建它们,因为我使用的是Flyway,它仅通过更改行尾即可识别文件是否已更改。
更新:我无法为每个文件指定该值(作为一种解决方法);无论如何,LF
自从我们升级到Flyway 4.X之后,现在我可以将那些文件更改为它了,它不再检查文件校验和了。
如“处理行尾(Windows) ”中所述,.gitattributes
指令将在结帐时应用。
因此,为了使所有文本文件都带有LF EOL git add .
,请接受lf转换(,git push
)。
或* text eol=lf
从.gitattributes
文件中删除指令,仅添加此文件,将其推送,然后再次克隆存储库以检查签出时是否未更改任何文件。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句