php/eclipse的版本控制建议



目前我手动进行所有更新,这意味着当我对代码进行更改时,我会手动将更改的文件ftp到服务器。显然,我在玩火,所以我想开始使用一个更结构化的过程来发布我的php项目的更新。我使用带有Eclipse的Windows7作为我的IDE。我有一个linux开发框,你建议我使用哪个版本控制程序与Eclipse交互,从我的开发框中签出一个副本?进行更改并将这些更改提交回开发人员,测试代码并能够将更改提交到生产框中?(我假设这是正确的过程?)

Subversion或Git是不错的选择。它们都有集成到eclipse中的插件,可以满足您的需要。

他们确实使用了一些不同的范式,所以选择你最熟悉的范式。

我会使用类似git或mercurial的DVCS和分支。我使用了这里描述的分支模型的一个细微变化:

http://nvie.com/posts/a-successful-git-branching-model/

让我向您描述一下我的部署工作流程:

我有4个环境:

  1. prod:生产-即:现场

  2. stage:暂存服务器,也称为测试环境。这是代码升级为产品之前的最后一站。

  3. int:集成服务器

  4. dev:开发

每个开发人员都有自己的本地代码副本,并使用前面描述的分支模型。

集成环境不断地合并开发人员推出的东西(我使用一个简单的提交挂钩和一个shell脚本来完成这一任务。你也可以考虑使用更复杂的CI工具来完成这项工作)。Int将拥有最新的"出血边缘"/"最新和最伟大"的应用程序版本。单元测试是用来确保没有人破坏任何东西。

就在发布之前,代码库被转移到阶段。像功能测试和UA测试这样的东西就在这一点上完成了。如果一切看起来都很好,那么我从一个阶段推到另一个阶段,代码就活了。

我个人使用NetBeans作为我的IDE——有一些插件可以很好地集成到git/mercial。

最后:开发工作流程/部署策略是您的项目/组织所独有的。我刚刚(大致)描述了我的观点——所有的观点可能适用于你,也可能不适用于你——但我希望你现在对理想情况下的工作方式有了一个想法。

最新更新