1
我想設置一個過濾器,以便在簽出時它會向我的文件注入一些git相關信息,並在提交時刪除此信息。我已經證實,當我提交文件時,它已被正確清理。此外,如果我刪除該文件,然後做一個結帳該文件被適當的污跡。Git塗抹過濾器
我的問題是以下。 如果我對文件進行了更改並且提交了更改,則塗抹過濾器不會運行。這是預期的行爲?有沒有辦法讓污跡過濾器在提交時運行? (可能是通過立即執行驗證?)
我想設置一個過濾器,以便在簽出時它會向我的文件注入一些git相關信息,並在提交時刪除此信息。我已經證實,當我提交文件時,它已被正確清理。此外,如果我刪除該文件,然後做一個結帳該文件被適當的污跡。Git塗抹過濾器
我的問題是以下。 如果我對文件進行了更改並且提交了更改,則塗抹過濾器不會運行。這是預期的行爲?有沒有辦法讓污跡過濾器在提交時運行? (可能是通過立即執行驗證?)
乾淨/污跡過濾器絕對不是可靠地將基於提交的信息添加到工作樹文件的地方。原因 - 正如您發現的 - 是在不需要將新版本的文件寫入工作樹的操作中不會觸及該文件。如果給定的文件沒有被這些提交所觸及,您可以合併或快速轉發許多提交而不應用過濾器。
如果模板文件可以通過構建步驟(使用類似git rev-parse HEAD
或git describe
或git describe
來檢索當前提交信息)轉換爲具有嵌入的提交信息的被忽略的實際文件,您可能會更好。
「當我提交文件時,它已被正確清理」:所以過濾器在提交時工作,是嗎?但也許他不會考慮索引中已添加的內容...... – VonC 2009-09-25 12:25:38
乾淨的過濾器對提交起作用,並且塗抹過濾器在結帳時起作用。我想知道是否有一種方法可以在我提交之後運行污跡過濾器,以便與提交哈希等相關的文件中的信息自動更新。 – cefstat 2009-09-25 13:01:46