git commit報錯解決,繞過代碼檢查


上一個項目用的svn,新項目用了git,很開心,終於學習了git了,本以為把git都學會了,但是還是遇到了一個不在自己學習的知識點范圍內的問題,最后是同事幫忙解決的。

問題:第一次代碼commit的時候,總是報錯,看了下報錯信息,貌似是在commit之前會檢查一下代碼錯誤,可是代碼沒有什么錯誤啊,能運行起來,難道eslint檢查的錯誤也會被檢查出來,然后commit失敗嗎?最后在網上找到了解決方案。

 

首先認識一下git的鈎子:

鈎子都被存儲在 git 目錄下的 hooks 子目錄中。 也即絕大部分項目中的 .git/hooks 。 當用 git init 初始化一個新版本庫時,git 默認會在這個目錄中放置一些示例腳本。這些腳本除了本身可以被調用外,它們還透露了被觸發時所傳入的參數。 所有的示例都是 shell 腳本,其中一些還混雜了 Perl 代碼,不過,任何正確命名的可執行腳本都可以正常使用

 

 GIT_DIR/hooks/pre-commit :

這個鈎子被 git commit 命令調用, 而且可以通過在命令中添加--no-verify 參數來跳過。這個鈎子不需要參數,在得到提交消息和開始提交前被調用。如果鈎子返回值不是0,那么 git commit 命令就會中止執行。

譯注:這個鈎子可以用來在提交前檢查代碼錯誤(例如運行lint程序)。

當默認的pre-commit鈎子被啟用時,如果它發現文件尾部有空白行,那么就會中止此次提交。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM