版本控制PHP Web项目
我们有一个我们想要版本控制的PHP项目。现在我们有三个人正在开发一个项目的开发版本,该版本驻留在所有Eclipse IDE链接的外部文件夹中,因此没有版本控制。版本控制PHP Web项目
什么是正确的方式和版本控制这个最好的方式?
我们有一个SVN成立,但我们只是需要找到检查的好方法,并指出,允许我们开发测试服务器上。有任何想法吗?
我们在类似的情况,这里是我们落得这样做:
- 设立两个分公司 - 解放和发展分支。
- 对于开发分支,包含一个将存储库部署到开发服务器的post-commit挂钩,以便测试。
- 准备就绪后,您将更改合并到发布分支中。我还建议在这里部署一个post-commit钩子。
您还可以为每个团队成员在其工作站上设置单独的开发服务器。我发现它可以加快速度,尽管你还有更多的准备时间。
我们不得不使用一个单一的开发服务器,因为我们用的是专有的CMS,跑进许可问题。所以我们的post-commit hook是一个简单的FTP机器人。
你们每个人都可以在本地运行,或您自己的dev的服务器(甚至同一个用不同的端口...)。
一种可能的方式(有可能是更好的方法):
你们每个人都应该有项目的自己签出的版本。
在您的计算机上的服务器的本地副本,并有测试了一整天。然后在每天(或每次)结束时,将任何准备好的测试合并到一起,然后将其签出到开发服务器上并对其进行测试。使用Subversion进行PHP开发
的方法之一是过于设置为一个存储库或全部三个开发,并使用这个仓库,更象是一个同步工具,不是真正的版本控制。
你可以,
做一个回购
添加您的项目的整个PHP文件结构
结帐这个回购协议的副本放到正确的位置你的dev的服务器上
使用svn钩子,在提交时激活
这个钩子,将自动更新开发服务器中的内容,只要在任何代码队检查任何人。
挂钩位于:
svn_dir/repo_name /挂钩/后提交
而且可能看起来像:
在/ usr/bin中/ SVN上/ path_to/webroot --username svn_user --password svn_pass
这样会更新开发服务器上工作拷贝到最新的检查中
这里是我们做什么:
- 每个开发具有构造就像我们的集成服务器虚拟机
- 整合服务器有空间为主干,每个用户,并为分支机构几个插槽
- 生产服务器
- 钩子是在颠覆到电子邮件时提交由
在项目的开始,用户进行一个分支,其检出其个人VM以及抓住数据库的干净副本。他们做他们的工作,随时做出承诺。
一旦他们在自己的个人空间完成的一切,他们登录到集成服务器,并检查了他们的分公司,运行测试,等等。当所有经过他们的分支合并到主干。
Trunk被重建,一整套测试运行,如果一切都很好,它会得到批准的标记,在SVN中标记,并在晚上升级到Production。
如果在任何时候一个由别人作出承诺,我们会得到一个电子邮件,可以合并那些改变我们的各个分支。
什么东西分布?你可以用Mercurial作为例子,尝试不同的工作流程,看看哪一个最适合你。