所以我们刚刚收到我们的新服务器,它将被用于网站开发和版本控制。
我已经设置了Ubuntu(11.04桌面版, 我喜欢界面,对不起!),并安装了Apache,PHP和MySQL – 到目前为止,这么好。
我们已经决定,我们希望使用Git作为我们的版本pipe理系统,因为我们已经有了很好的经验。 但是…我们不确定如何布局,我们的结构。 所以我希望你能帮助我们。
目前,我们运行一台运行XAMPP的Windows服务器的开发服务器bbtsrv02 。 我们在这个服务器上完成了所有的开发工作,当我们快速地盗取东西的时候,会导致大量的噪音和混乱。
在本地进行更改后,我们会通过FTP将这些file upload到我们的外部服务器(由其他人托pipe)。
这实际上并不实际,一次可以有3/5的开发者在整个网站上工作。 它会导致冲突,…这不是很好。
这个想法是使用bbtsrv02作为“镜像”服务器。 它将包含所有最新的和实时的代码。 bbtsrv03 (新服务器)将成为我们的开发服务器。 我们将拥有包含实时代码的master分支,每个开发人员将为每个更改分支自己的版本。
但是……进一步的思考导致我得出结论,我们需要为每个开发人员设置一些虚拟主机,以便他们可以closures主回购并在那里工作?
在这方面我没有太多的经验,但是我现在的计划是把主要的硬盘分区,给我们足够的空间去发展。
然后,我们将我们的分支更改为主分支,然后将其“复制”到bbtsrv02并上传。 我当然希望能为我做一些bash脚本。
我们这样做的方式(YMMV)如下:
每个开发者在他们的台式机/笔记本电脑上构build和进行基本的代码testing。他们在本地使用git来提交更改,分支等。当他们准备推送时,他们采取什么地方行动来清理他们的时间表,然后推。
推送到一个登台服务器。 我们的登台服务器是我们生产服务器的镜像。 我们在那里进行负载testing,代码评审和最终检查。
一旦我们通过这个级别,我们推到生产服务器。
一种select是让所有开发人员运行自己的LAMP服务器(也许是XAMPP)。 这样,开发人员就不会彼此做各种各样的事情。 你的开发者服务器可能有2个虚拟主机 – 一个是最新的“开发”网站,一个是最“稳定”的网站。
这两个网站都可以在git上。 您的开发网站将所有开发人员推向的回购。 然后你可以设置一个post-commit钩子来把stable分支推到稳定的仓库。 稳定的网站运行稳定的回购。
希望我没有困惑你,但这个解决scheme似乎是最好的