我有一个我在本地计算机上开发的网站的远程存储库。
我使用git flow
作为整齐的分支模型,所以我的分支是:
简化的工作流程如下:
develop
master
master
与develop` master
推送到实时服务器我想要实现的是,当我将master
分支推送到实时服务器时,我应该能够在通过URL访问网站时立即看到更改。
问题在于我无法真正推送master
,因为它已在实时服务器上签出。
我是否可以编写一个预推钩,它将对远程的dummy
分支进行结账,还有一个后推钩,它会将结账返回master
?关键是这些钩子涉及在远程执行git命令,我不知道如何做到这一点。
非常感谢任何例子!
答案 0 :(得分:2)
你应该在 bare repo 上推进掌握。
然后post-receive
hook可以在您的实时服务器上查看裸露的rpeo。
cd /path/to/bare/repo.git
GIT_WORK_TREE=/path/to/live/server git checkout -f