当我在ClearCase中签出文件时,它会询问我是否要查看“保留”或“未保留”文件。这些类型的结账之间有什么区别?何时适合使用它们?
答案 0 :(得分:15)
正如"What are the basic clearcase concepts every developer should know?"中所提到的,ClearCase支持一种锁定机制:
“悲观”:保留结帐实际上并不会阻止其他人自行结帐,但是他们必须等待签出文件的人员“保留” “办理登机手续:在第一次办理登机手续之前,没有人可以办理登机手续(然后每个其他用户必须将他/她的版本与最新的登记档案合并)
注意:“保留”结帐可以释放其锁定,并由所有者或管理员保留;
“乐观”:无保留结帐,这意味着(如果没有人在同一个文件上使用保留结帐):第一个办理登机手续的人可以在没有任何其他操作的情况下进行,其他人必须将他们的工作与最新的登记文件合并。
在术语中,如果使用政策:
注意:
cleartool checkout/checkin
与以下内容不同:
svn checkout
/ git checkout
,它们正在使用修订/提交的内容更新工作存储库,而不是签出文件的版本:文件集与一个档案。svn commit
/ git commit
已将可能多个文件的更改注册到repo(远程用于SVN,本地用于Git),而非创建一个文件的新版本。Git本身不会有“文件锁定”(保留结帐)。只有使用Git的系统可能会提供该功能,例如Git LFS。