我已经在几个PHP项目上工作过,并且总是在组织工作时遇到问题。你在哪里开发你的应用程序 - 在本地主机,远程服务器或可能是生产(!)? 当我在做一些主要路径后,在我的本地主机上工作时,我通过ftp发送了新文件 - 但有时它恰巧忘记了一个文件,并且只是为了浏览几个directiores来复制已更改的文件而感到累人。 你提出了哪些最佳实践?你如何管理PHP项目开发生命周期?
回答
这是我们如何管理我们的商业网站
- 开发在当地的沙盒
- 入住到SVN
- 自动构建/从SVN测试到内部 开发服务器
- 脚本部署使用rsync登台 QA/UAT服务器
- 脚本部署到生产 服务器。
分段和生产服务器都由ISP托管,并且硬件和版本匹配并运行RHEL,内部Dev服务器与版本匹配的CentOS。
这样,当代码击中生产服务器不应该有任何讨厌的惊喜,因为即使部署脚本获取阶段检查4
我正在开发一个与生产环境相同的开发环境 - 它可以防止由于不同版本或配置而导致的某些不同行为。完成后,我只是将所有文件移动到生产服务器上。
Winmerge是一个不错的和免费的Windows工具来区分开发和生产机器之间的文件。
是不是就像有一个控制系统版本不回去的时间的能力吗? – 2008-11-01 22:32:55
Google App Engine有一个适用的工具,可自动上传到生产环境修改的文件;不知道PHP是否有类似的东西。 所以,做一个dev2prod脚本(一个自动执行此操作的脚本)应该是一个很好的解决方案。
要做本地源文件管理,大家可能会建议你使用source code control system。
在本地计算机发展与完全相同的配置,你的开发环境(即apache mods,php扩展等),使用版本控制系统(我更喜欢SVN)来跟踪修改过的文件,以及哪些不是。
然后,您可以在生产环境或测试环境中编写脚本,将文件从存储库复制/更新到Web服务器路径。
可能得到告诉过改向老的文章,但这里是一个使用免费的工具,它,我该怎么办:
我使用NetBeans,Git的,到位桶,源代码树,gitflow和FTPloy。
Bitbucket.com:免费注册账号。 SourceTree:免费的bitbucket。管理git存储库的好工具。所有提交,合并和拉取都可以在这里完成。 bitbucket中的问题可以被追踪。
在sourcetree中,选择master分支,然后单击“git flow” - google gitflow - 这是功能,修补程序,开发和发布分支和源代码树的奇妙工作流程,可帮助自动执行此过程。
FTPloy.com自动部署您的主分支。免费是一个回购/服务器。但值得升级,如果你想推动开发分支到服务器沙箱进行测试。
希望这可以帮助别人搜索网页!
- 1. 你如何管理你的项目生命周期?
- 2. Lucene.NET生命周期管理
- 3. Android项目生命周期 - 活动生命周期之前(Activity.onCreate())
- 4. 你会怎样称呼生命周期管理课程?
- 5. DocumentDb - DocumentClient生命周期管理
- 6. SimpleRepository的生命周期管理
- 7. 如何让我的项目使用容器管理的Enitymanager生命周期而不是应用程序管理的生命周期?
- 8. 软件开发生命周期资源
- 9. Android开发生命周期设置
- 10. 分析服务项目生命周期
- 11. 管理项目与管理开发
- 12. dotnet中的依赖关系管理和发布生命周期
- 13. ASP.NET生命周期开始
- 14. 应用程序的生命周期:如何管理更新
- 15. 如何注入Drone实例而不管理其生命周期?
- 16. 我应该如何管理MVC Core中的DbContext生命周期?
- 17. 如何扩展/修改OSGi生命周期管理?
- 18. 用于.NET开发的免费应用程序生命周期管理工具
- 19. 管理MySQL数据库表开发/生产周期
- 20. 你如何把你的项目从开发到生产?
- 21. 如何使用m2eclipse-type项目的自定义生命周期?
- 22. 理解生命周期管理,同时建模包含关系
- 23. Azure网站生命周期管理是否有任何管理API?
- 24. Android生命周期发生故障
- 25. 统一和生命周期管理配置 - 总是瞬间生命期管理器
- 26. 如何管理会话/事务生命周期以处理许多实体
- 27. JSF生命周期,如何在生命周期的中期完成响应?
- 28. 你如何控制Rook服务器的生命周期?
- 29. 离子生命周期没有开火
- 30. servlet生命周期
我们除了我们使用SVN结帐,使舞台构建做同样的事情(允许指定修订#或标签 - 的情况下,后备箱undeployable) - 然后使用rsync,确保生产完全匹配阶段。 – DavidWinterbottom 2008-11-02 10:46:19