Svn 从Subversion部署网站

Svn 从Subversion部署网站,svn,Svn,我是subversion的新手,我想知道您是如何从开发阶段过渡到登台阶段,然后再过渡到生产阶段的 我想我已经掌握了创建为发行版制作的分支的概念。但实际上如何部署分支 理想情况下,我可以建立一个新的网站,并从分支复制文件,但我担心复制到生产任何svn绑定 如果相关的话,这是一个Visual Studio网站项目,我正在使用VisualSVN服务器、TortoiseSVN和Ankh与Visual Studio集成。您的构建系统中需要某种类型的“部署”目标,忽略名为.svn的文件夹-这是所有subve

我是subversion的新手,我想知道您是如何从开发阶段过渡到登台阶段,然后再过渡到生产阶段的

我想我已经掌握了创建为发行版制作的分支的概念。但实际上如何部署分支

理想情况下,我可以建立一个新的网站,并从分支复制文件,但我担心复制到生产任何svn绑定


如果相关的话,这是一个Visual Studio网站项目,我正在使用VisualSVN服务器、TortoiseSVN和Ankh与Visual Studio集成。

您的构建系统中需要某种类型的“部署”目标,忽略名为.svn的文件夹-这是所有subversion信息所在的位置。

svn export


导出不包括所有subversion cruft的文件,以执行以下操作。这将导出代码,而不必到处都是.svn目录。

听起来您需要对“release”分支执行svn导出。有关详细信息,请参阅。

除非您在单独的分支上开发,否则我只会使用a来标记发布


然后,您将需要对该标记进行一次修改,这样您就不会拥有所有额外的
.svn
文件夹。

基本上,您在这里遗漏了一部分-您不应该单独使用subversion来部署到测试和生产中。最好的办法是使用某种脚本从subversion中提取构建(如果使用svn导出,则不会附带subversion文件挂钩),构建任何必要的文件(使用可以编写脚本的MSBuild),删除不必要的文件(例如,自构建以来的.aspx.cs文件),然后将其复制到您的环境中


在本地,我们使用powershell将所有内容粘合在一起,并从命令行组合svn命令行、MSBuild和nUnit来进行构建。

我处理它的方式是使用构建工具(如ant+ivy或maven)来自动化从subversion检出代码的过程,构建工件,然后部署到任何需要的地方


我在java方面的工作比较多,所以不熟悉.net工具,也许您可以使用nmaven?

旧线程,但是现在这一点有了一些改变,因为SVN在项目的根目录中只有一个.SVN文件?您还可以将Apache设置为忽略.svn请求,从而使以这种方式部署更为可行?

非常好的一点John-除非是非常简单的设置,否则可能需要的不仅仅是简单的“导出”。除了您描述的“pull”类型的操作(脚本触发svn导出的地方),我还看到存储库中放置了一个“deploy”脚本。即,更新过程是1)执行导出。2) 运行部署脚本(通常在交互模式下运行)。在一个例子中,它实际上是一个“部署”页面。这是一个很好的观点,但这实际上是一个简单的设置。所以没有必要让事情变得过于复杂。