Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.NET-SVN web上载前端ent?_Svn_Asp.net Mvc 3_File Upload - Fatal编程技术网

ASP.NET-SVN web上载前端ent?

ASP.NET-SVN web上载前端ent?,svn,asp.net-mvc-3,file-upload,Svn,Asp.net Mvc 3,File Upload,我想添加一个区域/页面,允许用户将文件上载到SVN。 我看到了,这看起来很有希望,但我想知道它在处理冲突等方面有多好 一种方法是使用SharpSVN更新站点的回购协议本地副本,保存从浏览器收到的上传文件,然后提交,但是我想知道当多个用户尝试在大约相同的时间访问同一文件时,这会有多稳定。除了手动实现某种锁定机制之外,解决此问题的好方法是什么 哦,如果有人有一个预先存在的解决方案或一个好的教程,我很想看看 注意:我不是在寻找VisualStudio插件;这需要完全基于web,因为我们正在使用svn进

我想添加一个区域/页面,允许用户将文件上载到SVN。 我看到了,这看起来很有希望,但我想知道它在处理冲突等方面有多好

一种方法是使用SharpSVN更新站点的回购协议本地副本,保存从浏览器收到的上传文件,然后提交,但是我想知道当多个用户尝试在大约相同的时间访问同一文件时,这会有多稳定。除了手动实现某种锁定机制之外,解决此问题的好方法是什么

哦,如果有人有一个预先存在的解决方案或一个好的教程,我很想看看


注意:我不是在寻找VisualStudio插件;这需要完全基于web,因为我们正在使用svn进行文档共享,我不希望要求每个用户都安装Tortoise或命令行svn客户端。

最好是为Subversion创建一个WebDav配置,它支持自动提交存储在适当驱动器上的文档。在Windows中,这意味着有一个补充驱动器,即WebDav存储,在后端有一个Subversion目录。每次有人在该驱动器上存储某个内容时,它都会自动执行提交。但是你没有在机器上安装OrtoiseSVN……我认为这是更好的解决方案。

直接回答,你不会得到一个web上传前端

SVN作用于文件系统目录树的子部分,而不作用于文件。HTTP上载作用于文件,而不是目录树

如果存在SVN web前端,它将被限制为SVN功能的一个子集。不幸的是,这个子集太小了,它剥夺了SVN的大部分功能。您将如何捕获权限更改?如何将此文件中的更改与此文件集成到项目中所需的更改集相关联?我相信有足够的web开发时间可以找到解决方案;然而,已经存在比可以构建的解决方案更好的解决方案。使用它们

TortiseSVN将windows文件夹层次结构绑定到SVN项目。 WebDav将WebDav客户端绑定到SVN项目。 svn客户端命令行工具将目录树绑定到svn项目。 几乎所有主要IDE都有插件


选择最适合您工作环境的解决方案;因为它们都与SVN集成在一起,这是为了使用它。HTTP的设计远远早于SVN,它将信息推送到web服务器的能力有限。试图提交目录树及其所有内容的差异是一个问题,HTTP只是缺少足够的框架来完成这项工作,而没有很多解决方法,这意味着不稳定和奇怪,因为它不像HTTP。我使用了一个相当标准的文件上传页面和一个驻留在db中的信号量