git提交shell腳本格式轉換的問題

寫在前面

git是一種分佈式的代碼版本管理工具,目前也是主流,廣泛應用在大小公司、大小項目中。
因爲目前大多基於windows平臺開發,這裏Mac不說,沒用過,編寫的shell腳本在提交git時有個默認的轉換:
在這裏插入圖片描述

注意:
warinig: LF will be replaced by CRLF in xxx.sh

這裏有個dos格式到unix的轉換,大致意思是git add/git commit的時候會轉換成unix格式,git pull的時候又轉成了dos格式,那麼將這些個文件上傳到主機的時候就是dos格式的了,所以在Unix下執行就會報錯:

回車位置會提示:“\r”找不到命令

解決方法:

在git bash里加入第一行配置即可:

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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章