相关疑难解决方法(0)

在提交之前如何通过您的暂存文件进行grep?

所以在运行之前git commit我经常运行以下内容:

git grep --cached -l -I "debugger"
Run Code Online (Sandbox Code Playgroud)

我认为它类似于:

git diff --cached
Run Code Online (Sandbox Code Playgroud)

(它将显示您即将提交的所有更改,即将显示您的暂存文件中的差异).

不幸的是,我刚刚发现这个--cached选项git grep只是告诉git"只"查看其索引中的所有内容.

那么我怎样才能运行git grep并让它只通过我的分阶段文件?

(是的,我知道我可以简单地进行git diff --cached搜索,但我宁愿拥有编程能力来浏览我的分段文件.)

git grep commit git-commit

11
推荐指数
2
解决办法
1887
查看次数

通过git hook缩小CSS文件

我理想的情况是自动缩小CSS文件并将它们添加到git commit中.我不确定下面的#4是否可以完成,但我希望执行以下流程:

  1. 修改CSS文件
  2. 添加到临时区域
  3. 承诺
  4. 运行更新缩小文件的脚本并将其添加到提交中
  5. 提交完成

如果有另一种方式,我也会对此感兴趣.

git githooks

10
推荐指数
1
解决办法
3573
查看次数

是否有更好的方法来编写一个git pre-commit钩子来检查提交中的任何php文件是否存在解析错误?

到目前为止我所拥有的是什么

#!/bin/sh

php_syntax_check()
{
    retval=0
    for i in $(git-diff-index --name-only --cached HEAD -- | grep -e '\.php$'); do
        if [ -f $i ]; then
            output=$(php -l $i)
            retval=$?
            if [ $retval -gt 0 ]; then
                echo "=============================================================================="
                echo "Unstaging $i for the commit due to the follow parse errors"
                echo "$output"
                git reset -q HEAD $i
            fi
        fi
    done

    if [ $retval -gt 0 ]; then
        exit $retval
    fi
}
php_syntax_check
Run Code Online (Sandbox Code Playgroud)

php git version-control

7
推荐指数
1
解决办法
1526
查看次数

标签 统计

git ×3

commit ×1

git-commit ×1

githooks ×1

grep ×1

php ×1

version-control ×1