如何在推送过程中在GIT中更改文件

时间:2011-11-20 09:07:30

标签: git hook git-post-receive

当我将某些内容推送到我的GIT存储库时,会触发post-receive挂钩并执行一些脚本。是否可以在执行这些脚本之前执行某些操作(如果(并且仅当)特定文件相对于先前的推送(例如.sql文件)更改?)

由于

随机化

1 个答案:

答案 0 :(得分:1)

在第一步或预先接收或更新挂钩的同一个接收后挂钩中,您可以使用

git diff-tree --name-status -rz

并传入传入钩子的新旧引用(stdin或参数)并获取文件,检查输出中的修改 - M - 状态并执行所需操作。

另请参阅此处了解其他方式:http://progit.org/book/ch7-4.html