我目前正在尝试使用git,并尝试创建一个工作流程,以便在服务器上对裸远程repo进行推送时,可以基于不同的分支更新2个不同的站点。
post-receive hook如下:
#!/bin/sh
GIT_WORK_TREE=/www/development/ git checkout -f master
GIT_WORK_TREE=/www/production/ git checkout -f production
基于https://dev59.com/KG865IYBdhLWcg3wZNrT#3838804的代码,但做了一些修改。
不幸的是,在测试过程中,将新的测试文件提交到任何一个分支都会推送并成功更新Web根目录,但是删除相同的测试文件后,Web根目录仍然保留有已删除文件的副本。
有人知道如何使post-receive钩子强制执行删除吗?
/www/development
中的内容,然后尽可能轻松地使用该目录来触及相同的目录/www/production
。现在,Git 知道了production
中的内容,它会确保下次尽量少地触及development
,以此类推。看到问题了吗?我们有两个工作树,因此需要两个索引文件。 - torek