首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件开发 >

Subversion资料加锁

2012-11-22 
Subversion文件加锁Subversion对于文件的管理分为文本文件和二进制文件,对于文本文件使用subversion可以进

Subversion文件加锁

        Subversion对于文件的管理分为文本文件和二进制文件,对于文本文件使用subversion可以进行行级别的管理,但是对于二进制文件,subversion使用锁的方式管理,所有的加锁文件都是只读的,而且在本地拷贝对应了一个锁令牌,下面我们模拟下加锁和解锁的过程。

        用户Gongqingkui新建readme.doc文件,使用svn status检查状态,发现有了新建的readme.doc文档,使用svn add readme.doc使文档加入到subversion的管理之中,提交这些更改svn commit –m “add the readme doc document.”结果为

。而gongqingkui本地文件则看出为加锁文件Subversion资料加锁。需要注意的是,此时在Dongsuqin客户端执行svn info readme.doc只能看到一般信息,而不能看到加锁信息,这是因为svn info readme.doc是在本地工作拷贝工作,显示的是本地信息。使用svn info svn://192.168.195.54/hello/readme.doc则可以看到加锁信息。在用户gongqingkui提价修改文件后,系统自动解锁文件。

        为了在用户gongqingkui长时间不交出锁住文件的情况下解锁,可以使用svn unlock –force svn:// 192.168.195.54/hello/readme.doc的方法解开gongqingkui加在文件上的锁。Subversion使用pre-lock和pre-unlock这两个钩子脚本来实现对加锁用户的约束。

        需要注意的是锁是对应用户在本地工作拷贝的锁,同一个用户如在不同的工作拷贝上并不拥有同一个锁。确保沟通高效的前提下,使用锁有利于小组开发者明确开发责任,不越界修改其他用户的代码。加锁的原则尽量是快而且少。需要注意如果一个文件很多小组和开发人员过于频繁的修改的话,那么就需要在物理上对他进行拆分为数个单元,将这些单元与开发人员一一对应起来,降低加锁的需要。

热点排行