[SCM]源码管理 - perforce管理员需要知道的命令

 

1 p4 configure

用来管理server的配置变量,且修改立即起作用,不需要重新启动server。

当我们创建新和运行新的p4server后,一般需要修改如下的配置:

* 启动server进程的监视:p4 configure set monitor=1 or p4 configure set monitor=2;

* 启动基于ticket的认证方式: p4 configure set security=3;

* 阻止用户自己创建账号:p4 configure set dm.user.autocreate=2;

其他常用的选项:

* 设置最低的client的版本:p4 congigure set minClient=version;

* 当client的版本低于最低版本要求时的提示消息: p4 configure set minClientMessage=message;

* 查看所有的p4server的配置: p4 configure show;

* 查看本机上所有的p4server的共同配置: p4 configure show allservers;

* 查看p4server配置某变量的值: p4 configure variable;

* 查看某个命名p4server(当启动的时候使用参数-In P4NAME或设置了环境变量P4NAME)的配置: p4 configure show P4NAME;

 

2 p4 counter 和 counters

p4 counters 显示被perforce 或 相关的脚本使用的长期变量的列表。例如change中存储了最新的changelist(包含了未提交的pending changelist),journal存储了journal的名字,review中存储了上次review截止的chagnelist例如:

p4 counters

change = 92
job = 2
journal = 5
minClientMessage = please use new version 2010.2.
monitor = 1
upgrade = 22

在自动的话的脚本中可以使用counter,例如记录上次成功的build的changelist信息。

* 设置counter的值:p4 counter mycounter 123;

* 显示counter的值 (如果不存在,显示0): p4 counter mycounter;

* 删除counter : p4 counter -d countername;

* 对整数的counter自增1 : p4 counter -i countername;

 

3 p4 depot 和 depots

p4 depot用来创建,编辑和删除depot。一个p4server可以有多个depot(简单地理解为根目录)。depot 可以为local,remote,spec和archive类型。

* lcoal 为一般的depot,代码存储在本地的p4server。可以使用p4 depot depotname来修改depot的存储到不同的位置,默认地在p4root环境变量下;

* remote,只是对远程的p4server的depot的一个只读的链接,用来在多个p4server间共享代码;

* spec, 为p4server特定的depot,记录了对p4 server本身的database的修改,例如user,group,client等的修改历史;

* archive,为p4server特定的depot,存储了不常用的代码,需用使用命令p4 archive + p4 restore来进行一般的depot与archive depot的相互转化,一般不常用;

 

4 p4 flush = p4 sync -k

保持存在的workspace的文件,只是跟新db.have中记录的此workspace所包含的文件的版本信息。

假设有10个新来的dev需要建立环境,但是第一次代码的sync需要花费大量的时间,这个时候可以使用p4 flush来节约时间。过程为:

* dev1 基于firstworkspace运行p4 sync files;

* 其他的devs拷贝dev1 sync的文件到他们自己的client workspaces;

* 其他的devs运行 p4 flush files @firstworkspace来将他们的client workspace的状态sync到与firstworkspace相同。

此命令如果使用不正确可能导致p4 database处于不正确的状态,所以一般不使用。

可以使用p4 have来查看你的workspace中所有文件状态。

 

5 p4 logtail

查看最新的错误log。

 

6 p4 monitor

查看p4server的进程状态。

* p4 monitor show -el : 查看所有的p4server的进程。

* p4 monitor ternminate id : 结束某个p4server的进程。

 

7 p4 obliterate

从p4server上彻底删除文件和文件的历史记录。 一定要小心使用。

 

8 p4 ping

查看网络的性能,有的时候某些机器上sync代码很慢,这个时候可以使用此命令,将结果与其他的机器比较。

 

9 p4 set -s

在windows的注册表中设置perforce 变量。其他的系统中perforce使用环境变量。windows系统中也可以使用环境变量,如果环境变量定义了则覆盖注册表项。

设置环境变量到 windows的注册表:

* 只有当前用户可用:p4 set P4PORT=tea:1666

* 所有用户都可用: p4 set -s P4PORT=tea:1666

* 为NT service 设置 : p4 set -S p4svc P4PORT=1666;

* 删除某变量在注册表的值 :p4 set P4MERGE=

也可以定义windows的环境变量:

* set P4PORT=tea:1666

其他的系统如Linux,设置环境变量:

* P4PORT=tea:1666;

也可以通过配置文件来代替注册表或环境变量,如果使用配置文件,需要将配置文件名设置到P4CONFIG环境变量中。配置文件的格式如:

P4CLIENT=joes_client
P4USER=joe
P4PORT=ida:3548

p4 set 可以查看所有的环境变量和注册表的变量。

 

10 p4 triggers

用来管理p4server的所有的triggers。

 

11 p4 replicate 和 p4 pull

用来建立replicated server。


完!

posted @ 2011-08-26 14:37  iTech  阅读(2640)  评论(0编辑  收藏  举报