分布式Web开发策略

时间:2011-09-05 19:10:34

标签: git

我正在与其他人一起开发一个用于开发Web门户的项目。我的问题与网络编程的问题无关,但我需要一些输入如何有效地组织这样的项目。

目前,我们的Web开发基础架构包括两个服务器:开发系统和实时系统。我们在开发系统上工作并在那里测试我们的新功能,然后将所有内容移到实时系统中。因此,我认为我们使用git但是以一种相当无意的方式。每个人都在同一个本地存储库上工作,以便可以立即在服务器上查看更改。我们必须看到,我们正在做什么,因为我们只有一个开发服务器,所以我们不能拥有自己的本地存储库。完整功能被推送到全局存储库,以便我们可以将它们拉到实时系统。当多个人同时在门户上工作时,问题现在自然发生。由于我们使用不同的分支,因此代码不会被扰乱,我们正在处理的文件并不总是最新的。此外,如果有人切换到他正在处理的分支,我必须切换回来,以便我可以看到,我正在做什么。所有这些切换分支和非最新代码都不是很有趣。

我希望您了解问题所在。我看到了为项目所有人设置本地服务器的唯一解决方案,这似乎不是一个理想的解决方案,因为有很多因素使得这非常困难(例如几个特殊的服务器插件)。有没有人知道克服这些问题的更好方法,或者也许是最好的做法?

2 个答案:

答案 0 :(得分:2)

我真的,真的会建议尝试在所有开发者自己的机器上找到安装服务器的方法。

这是迄今为止最理想的解决方案。

但是,我可以想到一个替代方案:

您可以尝试在服务器上设置多个工作目录。将它们配置为子域或虚拟主机等。

这样,每个开发人员都有自己的工作区,但开发仍然会在服务器上进行,其他资源可以共享。

然而,这并没有解决所有可能出现的问题,但在您找到一种方法来为系统中的每个开发人员设置之前,它可能会作为一种临时措施。

作为在每台开发人员自己的计算机上设置开发系统的想法,您可以考虑创建开发服务器的虚拟机映像。通过这种方式,您可以简单地复制VM映像,并且已经设置了所有内容,开发人员只需要运行它。

答案 1 :(得分:1)

我让开发人员运行他们自己的本地服务器进行开发,然后他们在完成任务后将代码提交到存储库。我们每周都会将该代码导出到开发服务器(与生产服务器完全相同),并测试其中的日光,以便现场推送。我们使用分支作为版本号,所以我们所有的开发人员都在同一个分支上工作,直到它完成并准备好上线。在极少数情况下,更新与另一个开发人员正在做的事情冲突,我们只是合并文件更改。

这个过程让每个参与者都能保持简单。

相关问题