Git 伺服器:忽略新提交中的空白更改

Git 伺服器:忽略新提交中的空白更改

我發現了很多方法來處理 Git 中的空白問題,但所有這些方法都需要用戶端執行某種操作:配置 Git 以忽略 ws 更改、設置帶有警告的預提交掛鉤,或者僅配置編輯器自動刪除它們。但是有沒有一種方法可以簡單地忽略空白更改伺服器端或者甚至更好地默默地去除所有空白?

背景:我們有一個大型儲存庫,其中有許多開發人員,我們不想追趕並說服他們重新配置他們的工具,但我們不希望我們的儲存庫中有任何尾隨空格。對我來說,解決方案很明顯:一次刪除所有空格,並忽略從那時起的任何 ws 更改。理想情況下,也要在所有新提交中刪除 ws。但我該怎麼做呢?

答案1

你真的無法理智地做到這一點。您無法修改提交的內容;您只能建立新的提交。即使這是可能的,它也會破壞 git:伺服器上的提交將與本地開發人員儲存庫中儲存的歷史記錄無關,並且什麼都不會起作用。你確實需要執行這種過濾文件被添加到存儲庫中,這就是為什麼您在客戶端通過pre-commit鉤子等進行操作的原因。

更好的解決方案是在伺服器上實施強制機制:拒絕不符合您標準的變更。

相關內容