首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Subversion部署应用程序

使用Subversion部署应用程序
EN

Server Fault用户
提问于 2009-05-11 08:04:33
回答 3查看 458关注 0票数 3

我们在几个客户端的项目中尝试过Subversion。它的效果比我所期望的要好,但也有一些粗糙的边缘。

背景:

  • 应用程序将自动注册它所需的一切,所以只要从一台计算机复制到另一台计算机就安全了。
  • 它包含大量的设置文件,包括文本和二进制文件(矢量图像)。
  • 该应用程序是在每台计算机上本地安装的(因此它可以在没有网络访问的情况下使用)。
  • 客户端更新文件,我们为它们更新文件。

当前的解决方案是在我们的web服务器上使用Subversion存储库。如果需要更新文件,他们会安装TortoiseSVN,否则就会使用bat文件并调用命令行客户端。

自从我们引入Subversion以来,安装不同步已经没有问题了。我们还能够跟踪一些人搞砸了设置(并弄清楚了为什么会发生这种情况)。

问题:

偶尔你会发生冲突。这主要是因为新手用户错误地更改了其中一个设置。是否有一个svn客户端可以方便地为新手用户解决冲突?

(其中一家公司目前的解决方案是删除整个安装并执行新的签出)

编辑:该项目通常是我们标准应用程序的自定义版本。在客户位置的用户数为2-10个.

EN

回答 3

Server Fault用户

回答已采纳

发布于 2009-05-11 15:30:39

在这些情况下,svn导出是您的朋友,它提供了代码的“干净”快照。我的建议是以这种方式进行测试和生产。这将帮助您找到提交问题,比如漏掉签入或冲突,因为您只在特定的修订版中获得文件。

为了防止这些问题中的一些,尤其是如果您一直使用svn,请尝试使用生产分支。产品分支由经验丰富的开发人员维护,开发人员可以使用多向差异工具从开发人员分支中提取更改。正如其他人所指出的,svn合并(甚至更新)可能容易出错,因此这个工作流允许有选择地合并更改,这就是dscm(由Richard描述)的工作方式。

票数 3
EN

Server Fault用户

发布于 2009-05-11 08:28:17

我对Subversion的未来之一是,它将一切视为一系列版本,其他版本控制系统(如 )则会查看变更集(正如最新的Stack溢出Podcast中所提到的)。Subversion的这个方面使得合并变得非常困难,因为它不知道什么已经改变了。

作为一种解决方案,它并不比当前的解决方案好多少,我建议在更新之前运行svn还原来重置安装。

票数 3
EN

Server Fault用户

发布于 2009-05-12 00:27:03

结帐和导出的好处是,您可以看到处理签出副本的用户所做的更改。

如果您想要一个自动化的解决方案,您可以让部署脚本使用svn将更改的副本保存到某个位置(或通过电子邮件发送给您),然后在更新之前进行还原。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/6914

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档