项目中生产环境在centos中,于是写了个启动脚本。
windows平台开发,编写的shell脚本在提交git时有个默认的转换
注意: warinig: LF will be replaced by CRLF in xxx.sh
这里有个dos格式到unix的转换,大致意思是git add/git commit的时候会转换成unix格式,git pull的时候又转成了dos格式,那么将这些个文件上传到主机的时候就是dos格式的了,所以在Unix下执行就会报错:
解决方法:是在命令行执行
git config --global core.autocrlf false
git config --global core.safecrlf true
含义:
AutoCRLF
#提交时转换为LF,检出时转换为CRLF
git config --global core.autocrlf true
#提交时转换为LF,检出时不转换
git config --global core.autocrlf input
#提交检出均不转换
git config --global core.autocrlf false
SafeCRLF
#拒绝提交包含混合换行符的文件
git config --global core.safecrlf true
#允许提交包含混合换行符的文件
git config --global core.safecrlf false
#提交包含混合换行符的文件时给出警告
git config --global core.safecrlf warn
执行的结果是修改了..gitconfig文件(此文件一般是在C:\ Users\ [用户名] \下)
[core]
autocrlf = false
filemode = false
safecrlf = true
注:
如果需要在Linux系统手工修改,可以使用:
1、使用 vi 命令 编辑待修改的文件
vi start.sh
2、 使用 set ff=unix来修改文件格式即可