亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

git autocrlf設置的權威性建議

git autocrlf設置的權威性建議

Git
牧羊人nacy 2019-12-13 13:10:26
我每天使用Windows,Mac OS X和linux。我在所有這些環境中都使用git,它是從回購中提取出來的,回購是人們對行尾使用不同選擇的。在我的情況下是否有確定設置core.autocrlf的建議?
查看完整描述

3 回答

?
FFIVE

TA貢獻1797條經驗 獲得超6個贊

將其設置為false。

如果您可以避免使用編輯器修改任何eol,那么最好以不變的eol(即“如您所見”)將您的工作推遲。


查看完整回答
反對 回復 2019-12-14
?
慕容森

TA貢獻1853條經驗 獲得超18個贊

這些討論中經常沒有提到的一個問題:如果您在Windows上開發shell腳本(例如在cygwin中)并使用CRLF提交它們(autocrlf = false),它們將在* nix框上崩潰,并顯示無用的錯誤消息。(其他腳本語言可能也有類似情況。)撓了半個小時之后,您會記住,然后dos2unix小麻煩。如果您在混合環境中工作(例如,從Windows部署到linux服務器),并且您絕對希望將autocrlf設置為false,那么請確保所有Windows編輯器都使用unix(lf)行結尾。否則將autocrlf設置為輸入(并祈禱)。大多數21世紀Windows程序在沒有1980年代早期的行式打印機CR的情況下都很舒適,因此,將行尾設置為LF(unix)是一個好主意。



查看完整回答
反對 回復 2019-12-14
?
森欄

TA貢獻1810條經驗 獲得超5個贊

對于二進制文本表示形式中具有相同文本但行尾(EOL)機制不同的兩個文本文件,GIT不會具有通用的SHA1 。內容存儲為Blob,如果將另一個相同的副本存儲到存儲庫中,則將重復使用該內容(節省空間?。?/p>

GIT(設計者)的默認選擇是盡可能使用* nix樣式的EOL字符(僅LF),以便對于相同的文本內容,您具有相同的SHA1。(可能是重要的考慮因素;-)

因為內容/ blob不再記住用戶的原始EOL選擇(記住現在可能在某個遙遠的存儲庫中),所以Git必須對如何重新創建原始用戶的文件(是CRLF還是簡單地)做出一些猜測(基于選項)。 LF)以您(和您的工具)可以使用的方式使用。

通常的建議是,每個用戶在本地(a)提交到Blob時都轉換為* nix LF結尾(因此所有人都會看到通用的SHA1 Blob名稱)(a / k / a Right Thing),而(b)在本地設置重新創建其本地系統設置的選項,例如* nix(LF)或Windows(CRLF)等。

為您的用戶設置一些本地標準,并進行一次大的“ EOL / LF / CRLF和空格校正提交”,就可以了(加上對新用戶的培訓再培訓)

您還可以確保您(每個用戶)使用通用的空格調整設置,以使制表符v空格和結尾的空格不會造成更多的diff不便!



查看完整回答
反對 回復 2019-12-14
  • 3 回答
  • 0 關注
  • 571 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號