簡體   English   中英

有沒有辦法在預提交掛鈎期間 git add 文件?

[英]Is there a way to git add a file during a pre-commit hook?

在我們的預提交掛鈎期間,我添加了一個額外的命令來運行,如果發生了某些其他更改,它可能會導致修改或新文件。 我很好奇是否有可能在此預提交掛鈎期間將此文件添加到要提交的更改中? 我嘗試了一些幼稚的方法,例如在 pre-commit 鈎子中的命令之后調用文字“git add fileName”,但它似乎不起作用。 這甚至可能嗎?

看起來在這個問題中發現了一些解決方法,建議對現有文件使用git add -u 然而,更改源代碼甚至只是配置文件可能不是一個好主意,因為您的提交掛鈎可能會悄悄地引入新的錯誤或意外行為。

您可以通過在每次提交時運行 linter、靜態代碼分析、運行測試或重新編譯受影響的源代碼來緩解這種情況,如果其中任何一個報告新錯誤,則提交失敗,但這顯然會為每次提交引入大量多余的計算時間並且需要時間來實施,所以這也可能不是一個好主意。

我建議讓預提交檢測何時需要修改或創建文件並通知用戶,同時指定需要運行哪些命令或腳本以正確准備提交的暫存更改。 在向流程中添加一個或多個手動步驟時,這將使您有機會對版本號、代碼樣式、編譯錯誤等進行任何必要的檢查。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM