追記
コマンドプロンプト
echo $PATH /bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin
pre-commitファイル内
echo $PATH /Applications/Sourcetree.app/Contents/Resources/git_local/libexec/git-core:/Applications/Sourcetree.app/Contents/Resources/bin:/Applications/Sourcetree.app/Contents/Resources/git_local/bin:/Applications/Sourcetree.app/Contents/Resources/git_local/gitflow:/Applications/Sourcetree.app/Contents/Resources/git_local/git-lfs:/usr/bin:/bin:/usr/sbin:/sbin
type phpmd phpmd is /usr/local/bin/phpmd
phpmdのPATHをgit bash内で通すにはどうすれば良いのでしょうか?
前提・実現したいこと
git pre-commitでphpmを使いたいのですが、commnd not foundになります。
php -lとphp-dでエラーチェックを行いたいので、test.phpでエラー出るようにしています。
php -lは機能してエラー箇所指摘してくれます。
phpmdはコマンドが入っていないとのことで使えませんでした。
phpmd: command not found
発生している問題・エラーメッセージ
phpmdコマンドがないと言われます。
terminalで直接phpmd ***.phpで実行すると使えるのですが、pre-commitに書いてcommit実行すると以下のエラーが出ます。
git --no-optional-locks -c color.branch=false -c color.diff=false -c color.status=false -c diff.mnemonicprefix=false -c core.quotepath=false -c credential.helper=sourcetree commit -q -F /var/folders/tw/v50sj40d0gb0wqmsbhvf05qw0000gn/T/SourceTreeTemp.W4Tu0n -a .git/hooks/pre-commit: line 16: phpmd: command not found Parse error: syntax error, unexpected 'echo' (T_ECHO) in test.php on line 6 Errors parsing test.php Completed with errors, see above
該当のソースコード
php
1<?php 2 3 4$a = "test" 5 6echo $a; 7 8?>
bash
1#!/bin/sh 2if git rev-parse --verify HEAD >/dev/null 2>&1 3then 4 against=HEAD 5else 6 # Initial commit: diff against an empty tree object 7 against=4b825dc642cb6eb9a060e54bf8d69288fbee4904 8fi 9# Redirect output to stderr. 10exec 1>&2 11 12IS_ERROR=0 13# コミットされるファイルのうち、.phpで終わるもの 14for FILE in `git diff-index --name-status $against -- | grep -E '^[AUM].*.php$'| cut -c3-`; do 15 # PHPMDで未使用変数などのチェック 16 if ! phpmd $FILE text unusedcode,codesize,naming; then 17 IS_ERROR=1 18 fi 19 # シンタックスのチェック 20 if ! php -l $FILE; then 21 IS_ERROR=1 22 fi 23done 24exit $IS_ERROR
補足情報(FW/ツールのバージョンなど)
phpmdのインストール方法
$ brew install phpmd $ phpmd --version PHPMD 2.8.1snapshot201912271124
回答1件
あなたの回答
tips
プレビュー