SVN 使用锁实现独占式签出

?

SVN默认并行工作,但是自动合并又做得很渣。团队工作中,如果确实有一些文件希望独占式签出可以使用SVN的特别属性。

?

?

?

Subversion针对此问题的解决方案是提供一种机制,提醒用户在开始编辑以前必须锁定这个文件,这个机制就是提供一种特别的属性--svn:needs-lock。当有这个值时,除非用户锁定这个文件,否则文件一直是只读的。当得到一个锁定令牌(运行svn?lock的结果),文件变成可读写,当释放这个锁后,文件又变成只读。

?

提交项目时,被锁定的文件会自动出现在提交列表中。

?

更多信息参考:

?

http://tortoisesvn.net/docs/nightly/TortoiseSVN_zh_CN/tsvn-dug-locking.html

?

?

操作截图:

右击某个文件,为其设置属性。(不是每个文件都希望独占)

?

?

?

?

?

?

?

?

?

?

设置后提交此文件,从此,该文件每次编辑前都需要获取锁。

?

?

如果此文件已被其它用户更新,则获取锁前会强制获取最新版本

?

?

?

如果此文件正由其它用户独占签出,则获取锁失败

?

?

?

SVN 使用锁实现独占式签出

时间: 2024-07-29 16:07:05

SVN 使用锁实现独占式签出的相关文章

Java并非锁之独占非公平锁理解

Java锁系列教程之独占式锁 在Java并发编程中,锁是一个很重要的对象.Java中锁有两种:隐式锁和显式锁.使用synchronized关键字的锁是隐式锁.因为锁的申请和释放都是由JVM来维护的,不用我们来手动处理.使用Java并发包locks包下的锁,需要使用者手动申请和手动关闭.这种形式是显式锁.如果按照多个线程能不能共享同一个锁(资源)来分的话,可以分为独占式(排他)锁和共享锁.其中synchronized关键字的锁和ReentrantLock锁的锁都是独占式锁. 通过前面三篇文章的学习

TFS2013 设置签出独占锁(转载)

作者:晓菜鸟 出处:http://www.cnblogs.com/52XF/p/4239056.html 在使用TFS进行源代码管理的时候VS默认允许多个签出,但在团队开发中往往需要设置独占锁(排他锁)避免冲突,设置独占锁不需要在TFS的网页里面进行设置,只需要在VS里面进行设置即可. 一.取消启用多个签出 1.打开VS2013--团队--团队项目设置--源控件--签出设置--去掉"启用多个签出"的勾选.这里注意一下"启用在签出时获取最新版本"这个选项默认是不被勾选

TFS2013 设置签出独占锁

在使用TFS进行源代码管理的时候VS默认允许多个签出,但在团队开发中往往需要设置独占锁(排他锁)避免冲突,设置独占锁不需要在TFS的网页里面进行设置,只需要在VS里面进行设置即可. 一.取消启用多个签出 1.打开VS2013--团队--团队项目设置--源控件--签出设置--去掉"启用多个签出"的勾选.这里注意一下"启用在签出时获取最新版本"这个选项默认是不被勾选的,为了方便,我们将其勾选上,以后再签出代码时系统就会自动获取最新的版本了,点击"确定"

[转][TFS] 禁止默认允许多人签出和强制解除签入签出锁

使用 Visual Studio 2010 Team Foundation Server 进行源代码编辑时,可以对代码实施以下三种锁定之一: Unchanged - Keep any existing lock Check Out - Prevent other users from checking out and checking in Check In - Allow other users to check out but prevent them from checking in 貌似

svn稀疏目录--通过设置工作目录的深度(depth)实现目录树的部分签出

对于一个大的版本库来说,本地工作目录签出整个目录树是即费时又占地儿的.虽然可以只签出某个子目录树,但有时候还是需要从根目录签出.那么,怎么才能只把自己感兴趣的子目录签出来呢? 从svn1.5版开始,提供了稀疏目录(Sparse Directories)功能,允许对目录设置深度(depth),这个设置可以保存在工作目录上,以后svn update等命令都在这个设置下工作. 有以下几种depth可以选择: --depth empty:只包含目录自身,不包含目录下的任何文件和子目录.--depth f

TFS2012独占签出设置

说明:TFS2012默认是可以多人签出同一个文件.如果要设为独占签出,请看下面操作步骤 1. 2. 3. 然后选择工作区---编辑---高级.最后如下图,在位置那里选择服务器. END

TFS独占签出代码

最近发现微软给我们提供了免费的TFS,地址:http://tfs.visualstudio.com/, 就注册了一个,但是我发现没办法独占签出. 在公司里,TFS有服务端,所以很好设置,但是注册微软的tfs我们就没有服务端了,所以这里我们并不好设置了,不多说了,下面就来直接讲解如何设置独占签出. 步骤: 1.打开源代码管理资源管理器,点击“工作区”的下拉框,选择,“工作区” 2.选择编辑 3.选择“高级” 4.进入编辑工作区,tfs中“位置”选项中,默认的时本地,如果想独占签出,这里我们就必须设

TFS命令tf:undo(强制签入别人签出的文件)(转)

我们在使用TFS源代码管理的时候,会遇到这样的情况,源代码管理会在每个客户PC上创建一个工作区,然后这个工作区域映射到服务器上的源码文件夹,我们在正常签入,签出的时候,我们的源码会在服务器到客户端的工作区进行操作,但是一旦有项目组成员在告假或者离职之前签出,并且加入了签出锁,这时如果项目组的其他成员想要修改被锁定的文件,或者是TFS的管理员想要在源代码管理中删除这个项目,这时问题出现了,因为我们无法通过Team Explorer图形界面来进行撤出签出操作,只能通过TFS命令:undo来进行操作,

[转]强制取消TFS2008中其它成员的签出文件

本文转自:http://www.cnblogs.com/georgehu/archive/2010/10/23/1859573.html 有个项目,以前的成员离职了,刚好又签出了一个文件在TFS中并且上了锁,导致后面的维护无法签入和生成.在网上查了一下,找到了如下解决办法 1.在命令行中输入"cd  C:\Program Files\Microsoft Visual Studio 8\Common7\IDE"(tf程序在文件夹) 2.查找那个人所用到的workspace,操作如下:tf