在客户端上发送一个git hook

时间:2012-06-28 13:35:51

标签: git

我从“计算机1”更新了“repo”。在“repo”上,post-receive挂钩成功触发git checkout -f对“计算机2”的更改。

现在,在“计算机2”上,我想在上述结账完成后触发一个钩子。我在“计算机2”上尝试了post-receivepost-checkout挂钩,但没有成功。不是火。我可以在“计算机2”上使用哪种钩子?

1 个答案:

答案 0 :(得分:0)

您不能只git checkout -f,因为这意味着 repo1 将其内容转储到repo2工作树上:

 # repo1 post-receive hook
 GIT_WORK_TREE=/path/to/repo2 git checkout -f

您需要repo2来提取repo1内容以更新其(repo2)内容。
此外,repo2启动更新的事实意味着其他repo2挂钩将有机会依次被触发。

 # repo1 post-receive hook
 GIT_DIR=/path/to/repo2/.git
 GIT_WORK_TREE=/path/to/repo2 git pull repo1