有版本控制的情况下如何浏览网站?

3
我在Stackoverflow上浏览了一些内容,发现了这个主题:https://stackoverflow.com/questions/279/aspnet-visual-studio-and-subversion-how-to-integrate 然而,这并没有帮助到我,或者说我可能有点愚蠢。
所以,我的问题是!
我在远方的服务器上安装了VisualSVN,并且它能够很好地工作,我可以添加我的项目并拥有一个不错的源代码控制。但是,当我完成后,我不想“手动”将我的网站移动到正确的位置,我想将IIS网站映射到存储我的站点的SVN仓库中的目录。
现在这是我的问题,我无法确定这是否可行? 该项目当然在我的计算机上+repo。而且repo-server和iis-server是同一台机器,所以我想将它们映射在一起,但我知道SVN在文件上使用一些berkly-db-stuff。
有什么建议吗?

Subversion过去使用了Berkeley DB,但多年来默认使用FSFS,因为它更加健壮。无论哪种方式,Subversion服务器都不会直接将您的存储库文件以可直接使用的格式存储在磁盘上。您必须将Web服务器指向当前的checkout。 - Greg Hewgill
你会如何设置一个基于文件的结账系统呢? - Filip Ekberg
所有使用“svn checkout”进行的检出都是基于文件的,可以直接被Web服务器使用。 - Greg Hewgill
无法找到任何地方的“svn checkout”.. 嗯 - Filip Ekberg
如果你想让这个过程更加简单,可以考虑使用CruiseControl.NET和NAnt。一旦设置好部署项目,你就可以使用CC.NET托盘应用程序进行构建,并通过单击一次来发布你的网站。 - Todd Smith
2个回答

3
你需要的是一个提交后钩子,它们是存放在代码库文件夹中的小批处理文件(hooks子文件夹中应该有占位符文件)。
你可以设置提交后钩子,在服务器上将代码库检出到一个文件夹,并将Web服务器指向同一个文件夹。

此外,请确保您使用适当的用户进行检查。我曾经花了一整天努力解决一个无法正常工作的提交钩子,结果发现这就是我错过的。 - grapefrukt

2

可以实现。仓库端使用了Berkeley DB,但不会对客户端产生影响。Subversion会在各个地方创建.svn文件夹,如果您不喜欢这样的话,可以使用rsync

编辑:我错过了你已经有VisualSVN Server的部分。你只需要像TortoiseSVN或命令行svn一样,在您的网站上检出网站即可。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接