我很努力爲一個文件創建一個補丁,該文件在一行的末尾包含一些^ M。 當我編輯文件時,我沒有看到^ M,但由format-patch創建的補丁在修補區域上下文中指出了它。所以當我嘗試將它應用到新的git樹上時,git am正在搜索這行末尾的^ M,但沒有看到它;並導致錯誤。git format-patch和^ M EOL
git format-patch停止使用此^ M的任何想法或解決方法?
在此先感謝
PS:爲背景,我對這個混帳樹沒有寫入權限,這就是爲什麼我需要的補丁。
我很努力爲一個文件創建一個補丁,該文件在一行的末尾包含一些^ M。 當我編輯文件時,我沒有看到^ M,但由format-patch創建的補丁在修補區域上下文中指出了它。所以當我嘗試將它應用到新的git樹上時,git am正在搜索這行末尾的^ M,但沒有看到它;並導致錯誤。git format-patch和^ M EOL
git format-patch停止使用此^ M的任何想法或解決方法?
在此先感謝
PS:爲背景,我對這個混帳樹沒有寫入權限,這就是爲什麼我需要的補丁。
Git用^ M表示Windows樣式行的CR。如果將文件轉換爲Unix風格的行結尾,這些應該會消失。
關閉autocrlf的一個缺點是git diff的輸出將CR字符(由^ M表示)突出顯示爲空白錯誤。要關閉此「錯誤」,可以使用core.whitespace設置:
cf. http://lostechies.com/keithdahlby/2011/04/06/windows-git-tip-hide-carriage-return-in-diff/或本StackOverflow的問題:git-diff to ignore ^M
git的格式補丁 - 忽略空間變化 - 忽略空格-1 mychanges.patch
這幫助了我。如果您閱讀this,可以獲得更好的理解。