Subversion(svn+;tortoiseSvn)提交未锁定的文件

Subversion(svn+;tortoiseSvn)提交未锁定的文件,svn,version-control,tortoisesvn,Svn,Version Control,Tortoisesvn,我体验过颠覆的奇怪功能 我们正在使用最新的1.6 Svn服务器visual Svn和tortoise Svn 1.6.6 我们已经定义了属性svn:needs lock to a file,如果您从不同的位置复制文件,它将显示本地更改,如果您尝试提交svn,它将允许您提交,即使您没有获得锁 这对我们来说是个大问题,请告诉我们如何强制SVN在未获得锁的情况下不允许提交 谢谢。Subversion提供了锁定功能,方便用户管理对不可合并文件的并发更改。在Subversion中总是有可能“窃取”锁,因此

我体验过颠覆的奇怪功能

我们正在使用最新的1.6 Svn服务器visual Svn和tortoise Svn 1.6.6

我们已经定义了属性svn:needs lock to a file,如果您从不同的位置复制文件,它将显示本地更改,如果您尝试提交svn,它将允许您提交,即使您没有获得锁

这对我们来说是个大问题,请告诉我们如何强制SVN在未获得锁的情况下不允许提交


谢谢。

Subversion提供了锁定功能,方便用户管理对不可合并文件的并发更改。在Subversion中总是有可能“窃取”锁,因此提交者之间的通信可能仍然是必要的。通过关闭文件的只读属性,可以获得与描述相同的效果


如果您需要防止用户故意误用锁定功能,那么Subversion可能不是适合您的工具。其他产品,如Perforce或ClearCase,对锁定协议的要求要严格得多。

属性是
svn:needs lock
而不是
svn needs lock
。那可能是你的问题


此外,subversion不允许对任何人强制锁定。可以使用“-force”选项覆盖锁。

Subversion中的锁机制不会提供一种现成的方法来防止在没有锁的情况下提交

您可能,重点是可能,能够用服务器挂钩处理这个问题,但我不确定。也许您应该问一个新问题,即如何创建subversion服务器钩子脚本,以防止人们在不首先拥有文件锁的情况下提交更改


锁定机制只是一个额外的工具,用于管理有问题的文件,例如内容经常移动的设计器文件(因此合并是一件痛苦的事情),或者二进制文件(如果存储这些文件的话)。但是锁机制并不是为了防止您在没有锁的情况下提交,它只是一种方便,但很容易被绕过。

设置svn:needs lock属性没有什么特别的作用:它告诉Subversion在签出或更新这些文件时设置“只读”标志

因此,理想情况下,所有设置了svn:needs lock属性的文件都设置了只读标志。 当您获得svn锁时,Subversion将删除readonly标志,以便您可以编辑该文件

所以在你的情况下发生的是:
您正在将一个设置了只读标志的文件替换为另一个未设置此标志的文件。而且Windows不使用被替换文件的只读标志。

对不起,输入错误:属性为svn:需要锁定问题发布:谢谢。