在使用SVN时,我主要使用Commit和Get Latest,现在我正在尝试适应Perforce。
但是在Perforce中,我有点困惑。
在Perforce术语中,“获取最新版本(Get Latest)”和“签出(Check-out)”这两个术语有什么区别呢?
在使用SVN时,我主要使用Commit和Get Latest,现在我正在尝试适应Perforce。
但是在Perforce中,我有点困惑。
在Perforce术语中,“获取最新版本(Get Latest)”和“签出(Check-out)”这两个术语有什么区别呢?
从“Perforce 基本概念”中:
p4 sync
)是将文件从存储库传输到您的工作区。p4 edit
)是为了 编辑 从存储库获取最新版本。正如在“Perforce 不正确地同步文件”中所述,刷新(p4 sync
)将仅更新未打开(未检出)的文件,即使启用了“强制操作”也是如此(p4 sync -f
)。
因此,真正的区别在于“检出”标记文件已被修改,并保护该文件以免受任何刷新(任何“获取最新”操作)的影响。
Mark 评论并修改我刚才提到的“区别”:
如果在对某个文件进行编辑的版本之后运行“
获取最新版
”(或sync
),那么将会出现需要解决的冲突。
因此,虽然文件不会直接被同步更新,但是 Perforce 将设置冲突以便通过解决来更新该文件(事实上,在提交打开编辑的文件之前必须进行解决)。