如何知道Perforce的client workspace更新到哪个changelist呢?
Perforce并没有提供很直接的命令,因为Perforce从根本上还是对每个文件单独编号的,但是又提供了changelist功能,即对多个文件的commit具有原子性,要么所有文件都commit成功,要么就一个都不要commit成功。
在git里面,很简单就能通过
git log
知道当前的commit信息。
在Perforce里面则需要通过
p4 changes
来查询changelists。
p4 changelists
是p4 changes的一个别名。这两个其实是一样的。
p4 changes -m 1
能够得到所有的当前最新的changelist。
要想得到当前workspace里面最新的changelist可以进入workspace的根目录使用
p4 changes -m 1 ...#have
-m 是指要返回多少个changelists, 因为返回changelists是降序的,所以用-m 1正好返回当前workspace里面包含的最新changelist。
在Windows command line里面可以使用
p4 changes -m 1 #have
在MAC OS里面#have会被认为是注释,所以要加上引号
p4 changes -m 1 "#have"
推荐还是不要省略…, 我查了一个Perforce的文档,没有找到省略掉后的默认定义。