繁体   English   中英

您如何管理 PHP 项目开发生命周期?

[英]How do you manage PHP Project Development Lifecycle?

我参与过几个 PHP 项目,但在组织工作时总是遇到问题。 你在哪里开发你的应用程序 - 在本地主机、远程服务器或生产环境(!)? 当我在创建一些主要路径后在我的本地主机上工作时,我通过 ftp 发送新文件 - 但有时它碰巧忘记了一个文件并且浏览多个目录来复制更改的文件只是很累。 您提出了哪些最佳实践?

这是我们管理商业网站的方式:

  1. 在本地沙箱中开发
  2. 签入到SVN
  3. 从 SVN 到内部开发服务器的自动构建/测试
  4. 使用 rsync 脚本化部署到 QA/UAT 的登台服务器
  5. 脚本部署到生产服务器上。

临时和生产服务器均由 ISP 托管,硬件和版本匹配并运行 RHEL,内部开发服务器版本匹配 CentOS。

这样,当代码到达生产服务器时,应该不会有任何令人讨厌的意外,因为即使是部署脚本也在第 4 阶段被检查。

Google App Engine有一个合适的工具,可以自动上传修改后的生产环境文件; 不知道PHP是否有类似的东西。 因此,执行 dev2prod 脚本(自动执行此操作的脚本)应该是一个很好的解决方案。

做本地源文件管理,大家可能会建议你使用源代码控制系统

可能会因为重定向旧帖子而被告知,但这是我使用免费工具的方法:

我使用 Netbeans、Git、bitbucket、源代码树、gitflow 和 FTPloy。

Bitbucket.com:注册免费帐户。 SourceTree:不含 bitbucket。 管理 git 存储库的好工具。 所有提交、合并和拉取都可以在这里完成。 可以跟踪 bitbucket 中的问题。

在 sourcetree 中,选择 master 分支并单击“git flow”-google gitflow-它是功能、修补程序、开发和发布分支的出色工作流程,sourcetree 有助于自动化该过程。

FTPloy.com 自动部署您的主分支。 免费是一个仓库/服务器。 但如果您想将开发分支推送到服务器沙箱进行测试,则值得升级。

希望这对搜索网络的人有所帮助!

我正在一台开发机器上开发,该机器具有与生产机器相同的环境 - 由于版本或配置不同,可以防止出现一些不同的行为。 完成后,我只是将所有文件移动到生产服务器上。

Winmerge是一个不错的免费 Windows 工具,可以在开发和生产机器之间区分您的文件。

在您的本地机器上使用与您的开发环境完全相同的配置(即 apache mods、php 扩展等)进行开发,使用版本控制系统(我更喜欢 SVN)来跟踪修改后的文件和其他内容。

然后,您可以在生产或测试环境中编写脚本,将存储库中的文件复制/更新到 Web 服务器路径。

这是我自己的 PHP 开发生命周期。

  1. 在 Github 或 Bitbucket 上创建一个 GIT 私有存储库。
  2. 将 GIT 与 cPanel 连接起来。 (将更改提交到存储库和生产服务器非常容易)。
  3. 使用 Visual Studio Code 或 Sublime Text 在本地主机(可能在 Windows 上的 Xampp 上)进行开发
  4. 初始化 GIT 并连接到私有存储库。
  5. 将更改推送到 GIT 存储库(主/分支) - 主更改将自动上传到生产服务器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM