【发布时间】:2014-11-14 13:28:31
【问题描述】:
TLDR:当预提交挂钩修改文件时,PhpStorm 的行为方式很奇怪。
我有这个 pre-commit 钩子来检查对 js 和 css 文件的修改,如果其中一个已被修改,我们希望钩子更改配置文件(我们用来强制缓存重新加载的文件该“客户端文件”的所有浏览器),以便将更改包含在提交中。
钩子看起来像这样:
#!/bin/bash
JSCSSCHANGE=`git status|grep -E "(.css|.js)"|wc -l`
if [ $JSCSSCHANGE -ne 0 ]; then
#MODIFY THE FILE
git add .
fi
事实是,当我们通过命令行或什至使用 SourceTree 提交时,它工作正常:它被修改并包含在提交中的文件。
但是当我们通过 PhpStorm 进行提交时,在提交完成后,包括修改后的文件,我们留下了相同的文件等待提交,并处于修改状态。提交完成得很完美,它包含了修改,但我们留下了一个处于修改状态的相同文件。
【问题讨论】:
标签: git phpstorm pre-commit-hook