2011-03-06 53 views
3

从我们的CVS存储库中检出一些文件时,我注意到有人在这里不再工作已经检出了该文件。他似乎没有在离开之前撤消他的结账,因此他们现在仍然被困在存储库中。他的用户帐户和文件已被删除,因此我无法登录到他的机器并取消签出。从CVS存储库中删除旧文件签出

有没有办法在服务器上删除这些签出?

感谢

+0

我一直认为CVS是基于Copy-Modify-Merge-style的,因此在服务器上没有“签出”的概念。 – 2011-03-06 14:11:56

+0

它确实在服务器上签出。做结账不是必需的事情,但是当有多个人在项目上工作时,知道还有谁在修改相同的文件是很有用的。 – ted214 2011-03-07 03:20:22

+0

检查您的术语。 CVS中的“Checkout”总是非排他性的。你所说的可能是CVS术语中通常被称为“锁定”的内容,即'cvs admin -l'(在大多数版本的CVS(NT)中被标记为不赞成)。还是你在谈论CVSNT的“保留编辑”? – 2011-03-07 08:27:03

回答

2

您在您的意见fileattr.xml这听起来像你使用CVSNT提到来看。在那种情况下,从存储库中删除这些文件确实是一种可行的方法,但却是一种蛮力的方法。如果您的VS-插件确实使用CVSNT的保留编辑命令来实现的独家检出那么下面的命令应该已经删除了编辑锁,以及:

cvs unedit -u <username> <files...> 

(其中<username>是用户的名称当前持有“锁“)

虽然这需要您的用户帐户被CVS服务器视为管理员。有多种方法可以做到这一点,最简单的方法是在CVSROOT/admin文件中列出您的用户名。如果我没有记错,CVSNT还通过特殊的Windows用户组支持repo管理员。你必须检查文件的细节。

+0

@ ted214:谢谢你接受我的回答!随意投票,也是。 ;) – 2011-03-10 08:56:27

+0

我是7个缺乏所需要的15个声望的投票所以对不起,我不能投票。 – ted214 2011-03-11 07:56:51

+0

@ ted214:不用担心。我不知道这个限制(再)。随时找到答案来解决这个问题。 ;)无论如何,所以'unedit -u'确实可以做到这一点,是的? – 2011-03-11 09:40:45