Git post-receive只能检查那些在推送中被修改/添加的文件?

时间:2012-02-28 08:44:33

标签: git

我一直在git存储库中使用post-receive脚本,并使用以下命令检出存储库中的所有文件:

#!/bin/sh
GIT_WORK_TREE=/var/www/www.example.org git checkout -f

我想做类似的事情,但只检查已经修改或在推送中添加的文件。一旦文件被检出,后接收脚本将在这些文件上运行一些其他命令并删除末尾的文件,以便该目录为空。

这可能吗?

1 个答案:

答案 0 :(得分:5)

您可以使用git diff为您提供文件列表

git diff --name-only from..to

在一个post-receive钩子里,我想是

git diff --name-only $1..$2

此挂钩在标准输入上接收oldrevnewrevref