远程Symfony2 + Netbeans工作流程(专业git)

时间:2012-06-12 21:38:24

标签: php git postgresql netbeans symfony

我希望有人之前遇到过这个问题,并且能够提供帮助

所以,问题是这样的:有2个开发人员,每个人都需要2个版本的网站(开发+生产)。由于操作系统非常不同,三重配置难度和管理限制,因此无法在本地运行项目。但是在远程运行它们时存在许多问题:

  • 如何在Netbeans中运行Symfony2 CLI命令(因为这些命令需要访问db)?
  • 如何区分生产/开发?我允许对2个IP地址的数据库进行外部访问,但只有一个parameters.ini文件。一旦它用于连接到localhost(当由http运行时),其次用于通过远程主机连接(当CLI命令在netbeans中运行时)

您可能会问更多信息,所以请点击这里:

  • Dev#1:Kubuntu 12.04 x64 3.2.0-25-generic NB@7.1.2
  • Dev#2:Windows 7 x64 NB@7.1.2
  • 服务器:Ubuntu Server 12.04 x64
  • SQL:PostgreSQL
  • 网络服务器:Apache2

我们的工作流现在看起来(或者至少应该看起来像这样):

  1. Dev#1在本地执行某些操作,但在运行时,更改将被移动到服务器,以便他可以检查它是如何进行的beta1.sitename.com
  2. 在适当的时候,每个更改都会在git中提交给用户分支。
  3. 测试后,将baing合并为master,测试,拉到sitename.com,然后再次测试。
  4. 此后循环重复:)
  5. PS。有效的答案也将暗示在这种情况下应该如何正确的工作流程。我已经尝试过使用post-* git句柄,它也不能很好地工作......

1 个答案:

答案 0 :(得分:1)

首先,我强烈建议尝试解决开发机器问题。有vagrant可以与chef或puppet(或特殊的虚拟基本机器)一起使用,将开发环境移动到在开发者pc上执行的虚拟机中。这也可以解决有关远程服务器的许多问题。

如果无法做到这一点,请注意以下几点:

Netbeans命令无法正常工作。让你的开发人员进入机器并执行他们的命令。

我没有解决您的开发/生产环境问题。他们应该至少在虚拟主机上为每个开发人员配置不同的配置/缓存/日志,以便可以正确设置配置。 parameters.ini不应该在你的git存储库中(你可以通过创建一个parameters.ini.dist并忽略parameters.ini文件来处理它),这样你就可以拥有不同的参数。 另一件有趣的事情(在symfony live 2012 Paris上展示)是你可以在apache vhost中执行SET_ENV SMFONY_ PARAMETER _NAME,然后在配置文件中使用%parameter.name%(请注意两个下划线) 。这可能对您有用。

我确实没有可以在一台具有不同配置等的机器上处理多个开发人员的工作流程。这只是一团糟,您可以使用复杂的脚本来解决您的问题,这些脚本会在每次发生某些事情时运行,或者通过查找更好的解决方案,例如虚拟机或服务器上具有不同目录的不同虚拟主机。