相信大家對 Git 並不陌生,這次在升級 Moztw 的討論區,從 3.0.5 升級到 3.0.7 p1,過程由其他 Moztw 成員升級,我在將最後程式 commit 到 github,因為兩個版本差異性很大,所以有新增多個檔案,commit 過程出現了錯誤訊息:「You have some suspicious patch lines」,這是因為 git 會檢查每行程式碼最後是否有多餘空白或者是 Tab 按鍵,為瞭解決此問題,可以去修改 .git/hooks/pre-commit,將底下程式碼:
if (s/^\+//) { $lineno++; chomp; if (/\s$/) { bad_line("trailing whitespace", $_); } if (/^\s* \t/) { bad_line("indent SP followed by a TAB", $_); } if (/^([<>])\1{6} |^={7}$/) { bad_line("unresolved merge conflict", $_); } }改成:
if (s/^\+//) { $lineno++; chomp; # if (/\s$/) { # bad_line("trailing whitespace", $_); # } # if (/^\s* \t/) { # bad_line("indent SP followed by a TAB", $_); # } if (/^([<>])\1{6} |^={7}$/) { bad_line("unresolved merge conflict", $_); } }暫時停止 git 過濾字串,等 commit 完成之後,在將其 unmask 掉。 參考網站:
Git on Windows: 「You have some suspicious patch lines」