在工作中,我们有一台安装了 IIS 和 Subversion 的 Windows Server 2003。我们用它在本地发布和测试
我们的 ASP.NET 网站。每个程序员都在他的 PC 上安装了 Tortoise,并且可以更新/提交内容到服务器。托管存储库工作正常。
但保存在这些存储库中的文件需要复制到我们的本地 IIS(虚拟目录)。
将这些 Subversion 存储库发布到本地 IIS 的简单方法是什么?
Edit:
谢谢puetzk我添加了一个简单的bat文件,每次提交发生时都会执行该文件(检查颠覆文档关于钩子)。我的bat文件只包含:
echo off
setlocal
:: Localize the working copy where IIS points)
pushd E:\wwwroot\yourapp\trunk
:: Update your working copy
svn update
endlocal
exit
只需将 Web 服务器的文件区域保留为工作副本,并在您想要“发布”时在其中执行 svn up 即可。如果您觉得 .svn 文件夹的内容看起来不整洁,请将其配置为隐藏它们(我不具体知道如何执行此操作,但我认为可以完成)。他们已经有文件系统隐藏位,这可以解决这个问题。
如果您希望它真正自动(有人提交后立即更新),请在 SVN 服务器上使用提交后挂钩脚本来启动第一个进程。
评论中的其他人建议使用导出而不是结帐。这也可以工作,并避免 .svn 混乱,但有两个缺点。第一,它每次都必须重新下载整个内容,而不仅仅是修改后的文件(因为它没有保留 .svn 目录来记住它有什么)。如果你有很多文件,这会慢得多。第二,更新自动替换文件(将新版本写入 .svn/tmp,然后将其移动到位)。导出会在下载时将文件逐渐写入目标位置。这意味着导出可能会将不完整的文件传递给在错误时间浏览该文件的人。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)