1

我们希望做两件事:

  1. 建立离线网络测试平台,以及
  2. 使用 SVN 实现版本控制。

我看到的帖子建议 SVN 存储库应该作为独立于测试和实时平台的数据存储存在,可能在不同的服务器上。

任何人都可以向我指出有关如何在存储库、测试和实时环境之间正确暂存代码的文章/帖子吗?

一个主要问题是保持测试和生产代码同步,因此测试只显示在测试环境中复制的实时代码的更改。

4

2 回答 2

1

SVN 存储库的实际托管实际上独立于您拥有的任何其他基础设施。通常存储库托管在内部“生产级”机器上,因为源代码是您的生命线。

使用 SVN 处理测试登台的最简单方法是标记您推送到测试服务器的版本。如果您对测试结果感到满意,您可以将标签推送到实时服务器而不受惩罚。而且,如果您必须对当前的实时版本进行小错误修复,您可以从标签创建一个分支并在那里提交修复,再次首先部署到测试,然后部署到实时系统。

对于更复杂的场景,您可能想要创建“测试”和“实时”分支,它们合并和/或从主干中挑选更改。这仅适用于 subversion 1.5 或更高版本,并且需要有人负责“live”从“test”和“trunk”中获得所有正确的更改。

于 2009-04-13T19:39:05.593 回答
0

在我们的办公室中,我们使用本地开发服务器,该服务器具有 Trac、SVN 和个人子域划分的开发区域。每个开发人员对每个项目都有自己的子域,每个项目都有自己的 SVN 存储库。

我们有一个“同步日”,每个人都“提交”他们的更改,每个人“更新”他们自己的目录,这意味着每个人都会获得最新版本,然后我们开始测试。

在确定一切正常后,我们将最新版本“标记”为“稳定”,并使用 lftp 将此版本与一个小 bash 脚本同步。

希望这可以帮助。

于 2009-04-13T19:32:31.350 回答