Fabric脚本/Bash:如何检测Git文件更改

3

我正在为我的Symfony项目创建一个fabric部署脚本。
我想要检测文件是否自上次提交以来发生了更改,以便打开它并进行修改。

我目前正在尝试:

def changes_between_two_diffs_grep(grepval):
    return run("git diff --name-only %s %s > /dev/null | grep '%s'; echo $?" % (env.point, env.old_point, grepval))

if (changes_between_two_diffs_grep('parameters.yml.dist') == "0"):
    edit_config()

但是徒劳无功。我错过了什么吗?

定义徒劳无功 :) 什么没有起作用? - favoretti
为什么这个问题被标记为bash? - gniourf_gniourf
1个回答

2
似乎您在命令中错误地将> /dev/null放置了。
这会导致没有任何内容(通过管道)传递到grep命令,因此grep找不到任何内容。

grep找不到任何内容时,它会返回1。

这意味着您将永远从changes_between_two_diffs_grep()获得1。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接