2012-06-15 74 views
2

作爲前端開發人員,我經常添加代碼來隱藏後端開發人員的錯誤消息;)git可以忽略特定的註釋調試代碼嗎?

有沒有辦法讓git忽略以某種方式評論的代碼?例如

.error { display:none; } // DEBUG-GIT-PLEASE-IGNORE 

或者有人爲此寫了一個插件?

+0

看起來像git鉤子的常見用例,它完全拒絕提交調試代碼。 – KingCrunch

+0

http://stackoverflow.com/questions/6557467/can-git-ignore-a-specific-line – vergenzt

+0

@vergenzt「最好有一個配置文件每個部署目標和一些運行時參數,但無論您是啓動服務器」 - - 我讀過這篇文章,但不知道它是什麼意思或如何去做! –

回答

3

您可以創建一個乾淨的filter,其中包含所有包含DEBUG-GIT-PLEASE-IGNORE的行。

但更簡潔的方法是更改​​Web應用程序,以便可以在Web主機上配置此行爲。

+0

感謝Rudi。似乎你可以通過@ [KingCrunch](http://stackoverflow.com/users/)通過[hooks]忽略整個文件(http://git-scm.com/book/en/Customizing-Git-Git-Hooks) 421223/kingcrunch)(在這種情況下必須在提交時刪除調試代碼),或者您可以使用[filter](https://www.kernel.org/pub/software/scm/git/docs/gitattributes.html)放下所有的調試線。 但爲什麼第二種方法被認爲是「不潔」? –

+0

主要問題是,在存儲庫中的代碼與工作副本中的代碼不同。這可能導致微妙的錯誤。假設有兩行語句,第一行是實際代碼,第二行是調試代碼。使用乾淨的過濾器時,兩個語句都將被刪除,在沒有想要的語句的情況下在回購中留下文件。 – Rudi

0

基本上沒有。 Git目前沒有辦法忽略文件​​的特定部分,只有整個文件。

但是,人們可能會編寫腳本來修改git diff的輸出,並將git配置爲使用該腳本。我不確定這將是多麼有效,因爲我不認爲git使用diff來登臺文件,但它可能是值得研究的。

相關問題