2

如何git diff在 A 和 B 之间的预接收挂钩中获得 a?

  • A.(somefile.ext查看的最新版本)服务器上的当前 HEAD
  • B.(somefile.ext查看的最新版本)从预接收挂钩接收到的树

我需要这个,因为当某些文件更改(在 Gitolite 服务器上)时,我们希望通过电子邮件收到通知并查看 A 和 B 之间的差异。

环境:Ubuntu server 11 + Gitolite + pre-receive hook

4

1 回答 1

2

我认为您实际上想使用 post-receive,因为 pre-receive 主要用于拒绝更新和 post-receive 通知(这似乎是您想要做的)。

两者都获得相同的输入(通过标准输入),并且记录在githooks(5)
中。输入是更新的 ref 及其新旧提交哈希的列表。
你可以使用这些数据来做你的git diff

于 2012-06-06T16:03:32.073 回答