1
我更新了“计算机1”的“回购”。在“回购”上,post-receive
钩子成功触发git checkout -f
对“计算机2”的更改。在客户端发起git钩子
现在,在“计算机2”上面,我想在上面的结帐完成后发射一个钩子。我试过“计算机2”上的post-receive
和post-checkout
挂钩,但未成功。都不会发生。我可以在“计算机2”上使用哪种钩子?
我更新了“计算机1”的“回购”。在“回购”上,post-receive
钩子成功触发git checkout -f
对“计算机2”的更改。在客户端发起git钩子
现在,在“计算机2”上面,我想在上面的结帐完成后发射一个钩子。我试过“计算机2”上的post-receive
和post-checkout
挂钩,但未成功。都不会发生。我可以在“计算机2”上使用哪种钩子?
你不能只是git checkout -f
,因为这意味着repo1倾销其对repo2工作树内容:
# repo1 post-receive hook
GIT_WORK_TREE=/path/to/repo2 git checkout -f
你需要的是repo2
,以便更新其(repo2
)含量拉repo1内容。
另外,repo2
启动更新的事实意味着其他repo2挂钩将有机会依次触发。
# repo1 post-receive hook
GIT_DIR=/path/to/repo2/.git
GIT_WORK_TREE=/path/to/repo2 git pull repo1