スポンサーリンク

このドキュメントの内容は、以下の通りです。

はじめに


SCM(ソースコードマネジメントツール)にコミットする前に、シンタックスのチェックしてますか?

Jenkins でコミットビルドをやっていて、そのときにシンタックスチェックを走らせてます。
でも、Jenkinsのジョブが走らないとエラーがあったかどうか、わからないです。

コミット前にシンタックスチェックができたらいいんだけど、いちいち、コマンドを叩くのが面倒くさいです。
というわけで、SCMのフックを使って、コミット前にチェックしてしまおうという話です。

今回の対象は、PHPのシンタックスチェックです。

シンタックスチェックの例


以下は、git にコミットする前に、変更したPHPのファイルのシンタックスチェックを行う例です。

git status | cut -c 3- | egrep '^(modified|new file)' \
| egrep '\.(php|inc)$' \
| awk -F: '{ gsub(/[[:space:]]*/,"", $2); print $2}' | xargs -n1 php -l
No syntax errors detected in foo.php
No syntax errors detected in bar.php

設定


Git にコミット前にコマンドを実行するには、pre-commit というファイルで指定します。
.git/hooks/pre-commit に設定を追加します。
git status | cut -c 3- | egrep '^(modified|new file)' \
| egrep '\.(php|inc)$' \
| awk -F: '{ gsub(/[[:space:]]*/,"", $2); print $2}' | xargs -n1 php -l

スポンサーリンク
スポンサーリンク
 
いつもシェア、ありがとうございます!


もっと情報を探しませんか?

関連記事

最近の記事

人気のページ

スポンサーリンク
 

過去ログ

2020 : 01 02 03 04 05 06 07 08 09 10 11 12
2019 : 01 02 03 04 05 06 07 08 09 10 11 12
2018 : 01 02 03 04 05 06 07 08 09 10 11 12
2017 : 01 02 03 04 05 06 07 08 09 10 11 12
2016 : 01 02 03 04 05 06 07 08 09 10 11 12
2015 : 01 02 03 04 05 06 07 08 09 10 11 12
2014 : 01 02 03 04 05 06 07 08 09 10 11 12
2013 : 01 02 03 04 05 06 07 08 09 10 11 12
2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
2003 : 01 02 03 04 05 06 07 08 09 10 11 12

サイト

Vim入門

C言語入門

C++入門

JavaScript/Node.js入門

Python入門

FreeBSD入門

Ubuntu入門

セキュリティ入門

パソコン自作入門

ブログ

トップ


プライバシーポリシー