我参与了几个PHP项目,但总是遇到组织工作的问题。你在哪里开发你的应用程序 - 在localhost,远程服务器或生产一个(!)? 当我在制作一些主要路径后在我的localhost上工作时,我通过ftp发送新文件 - 但有时它恰好忘记了一个文件,浏览几个directiores来复制更改的文件只是很累。 您提出了哪些最佳做法?
答案 0 :(得分:10)
这就是我们管理商业网站的方式:
暂存和生产服务器均由ISP托管,并且硬件和版本匹配并运行RHEL,内部Dev服务器与版本匹配的CentOS。
这样,当代码命中生产服务器时,不应该有任何令人讨厌的意外,即使在第4阶段检查部署脚本也是如此。
答案 1 :(得分:1)
Google App Engine有一个适当的工具,可以自动上传到修改过的生产环境文件;不知道PHP是否有类似的东西。 因此,执行dev2prod脚本(自动执行此操作的脚本)应该是一个很好的解决方案。
要进行本地源文件管理,每个人都可能建议您使用source code control system。
答案 2 :(得分:0)
我正在开发一台开发机器,它具有与生产机器相同的环境 - 由于不同的版本或配置而阻止了一些不同的行为。完成后我只需将所有文件移动到生产服务器上。
Winmerge是一个很好的免费Windows工具,可以在开发和生产机器之间区分文件。
答案 3 :(得分:0)
使用与开发环境相同的配置(即apache mods,php扩展等)在您的本地计算机上进行开发,使用版本控制系统(我更喜欢SVN)来跟踪修改后的文件以及不是。
然后,您可以在生产或测试环境中编写脚本,将文件从存储库复制/更新到Web服务器路径。
答案 4 :(得分:0)
可能会因重定向旧帖而被告知,但这是我使用免费工具的方式:
我使用Netbeans,Git,bitbucket,source tree,gitflow和FTPloy。
Bitbucket.com:注册免费帐户。 SourceTree:免于bitbucket。管理git存储库的好工具。所有提交,合并和拉取都可以在这里完成。可以跟踪bitbucket中的问题。
在sourcetree中,选择master分支并单击“git flow” - google gitflow - 这是功能,修补程序,开发和发布分支的奇妙工作流程,sourcetree有助于自动化该过程。
FTPloy.com自动部署主分支。免费是一个回购/服务器。但是,如果您想将开发分支推送到服务器沙箱进行测试,那么值得升级。
希望这可以帮助搜索网络的人!
答案 5 :(得分:0)
这是我自己的PHP开发生命周期。