Perforce使用指南_forP4V

Perforce使用指南_forP4V


第一章 前言



PerforceSCMSystem是一款构建于可伸缩客户/服务器结构之上的软件配置管理工具。仅仅应用TCP/IP,开发人员就能够通过多种Perforce客户端(几种平台的GUIWEB、或命令行)访问Perforce服务器。Perforce能够被快速和容易地部署,即使对大型或分布式的站点,也只要求最小限度的管理。Perforce可以使用在50多个操作系统中,它包括版本控制、工作空间管理、变更处理和一个强大的分支模型。这里介绍的P4Vperforce的一种可以跨平台使用的客户端。


1.1.Perforce结构




第二章 Perforce使用介绍


2.1客户端配置

2.1.1服务器连接

  • 获得p4v命令

    • 复制 p4v-2010.2.317255文件夹 至/usr/local/下。

      /usr/local/p4v-2010.2.317255/bin/添加到PATH变量中

  • 登录perforce

    • 终端输人p4v&

      出现对话框如下:

      user一栏输入您的用户名



    • 点击右下角的OK键,出现密码对话框:

      填入您的密码








    • OK,就进入到了perforcep4v环境



2.1.2客户端主要工作区







上图所示的是Perforce的主界面,大部分的操作都是在该界面下完成的。该界面分为三个区域:

区域1:显示Deport以及Workspace中的内容,称为目录区。

区域2:列出文件的一些操作属性,称为操作区。

区域3:给出所执行操作的提示信息,称为信息区。


2.1.3.1目录区


目录区由Depot目录区和Workspace目录区组成。

1.Depot目录区

显示了服务器上可见目录结构(用户权限设置不同,可见目录也不同),这也与WorkspaceView

射文件路径有关系,可以指定显示文件路径。在这里,可以执行的操作包括:check out,submit,

GetLatest Revision, Revert Files等操作。





















2Workspace目录区



显示了与服务器上文件有映射关系的,本地工作空间的目录结构,这与WorkspaceView也有关系。

操作同上。


2.1.3.1操作区



操作区中的内容主要由如下的几种工作区组成。

1.Pending changelists工作区

这里显示当前用户正在修改的文件和其他开发者正在修改的文件。

当然,你只需要关心你自己的project即可。当你执行:Markfor Add,checkout等操作时,这些信息就会显示在changlist列表中显示,并由不同的图标显示其状态。如果你修改完成后,执行submit就可提交更新文件;但也可以执行revert放弃所作的修改。


2.Submitted changelists工作区

显示了近期所有项目组成员对项目所做的操作。

从中可以获得如:changlist号、修改时间、修改文件的内容、修改原因及修改人等信息。





3.Workspace工作区

在该工作区中可显示所有连接在服务器上的客户端工作空间。

在此工作区内可以执行创建、编辑修改、删除用户工作空间等操作。(前提是有执行的权限。)




4.History工作区

查看指定文件的变更历史信息。




5.Labels工作区

查看目前所有的label号。

在此工作区中可完成label的创建,内容的修改等。(前提是有执行此操作的权限。)




6.Branchs工作区

查看目前所有的Branch号。

在此工作区中完成Branch的创建,修改、删除等。(前提是有执行此操作的权限。)



除了以上说明的几种工作区,还有FilesUsersJobsDetails以及Fildfiles等工作区。包括上述的六种在内.


2.1.3.3.信息区

由一个窗口(Panewindows)组成。

Panewindows

这是一个非常有用的窗口,称之为消息窗口区,最底下的那个窗口就是。你的任何操作的信息都会


出现在这里,包括success,warning, error等信息。特别是执行某个操作失败后,这里的信息是至关


重要的。一般情况下,都可以根据这里的信息来处理一些意外情况或者是不规范操作。

2.2. Perforce的日常操作

2.2.1.添加(Add)文件夹及文件

1.Workspace中选定要添加的文件夹/文件上右击,选择“Markfor Add”,添加文件。


将添加文件行为显示在pendingchangelists工作区中。在工作区上增加好文件夹和文件后,图标上有个红色的加号标志 ,表明此时增加的文件夹和文件还仅仅存在客户端的工作区中,还没有提交到服

务器上的仓库中。所以,右键点击需要提交的文件夹或文件,选择Submit,提交完毕后,文件此时才真正提交到服务器上的仓库中。


Perforce使用指南_forP4V



2.提交(Submit)添加文件/文件夹

Submit的过程中,需要写下该变更的描述,这点很重要!描述信息的详细,将大大的方便对文件

的查询和跟踪。且在描述的开头用英文说明此次操作行为的类型。如用Add表示添加;Modify表示

修改;Build表示编译等等。




点击Submit后,即可看到文件前面的红色加号已经去掉了,并且在Reversion栏中已经显示出该文件的版本号。此时,文件的右下角有个绿色的标识,表示该文件当前显示的是最新版本。



2.2.2.文件修改

如果需要对文件进行修改,首先将需要修改的文件CheckOut出来到本机,才可以进行修改。

1.右键点击需要修改的文件,选择CheckOut命令。




此时被CheckOut出来的文件左上方有个红色钩标志,表明该文件已经成功的被您CheckOut出来了。如果是文件的右上方有个蓝色钩标志,说明该文件已经被别人CheckOut出来了。由于Perforce支持并行操作,所以您仍可以将别人已经CheckOut的文件再次CheckOut到您本机进行修改。




2.双击打开已经CheckOut出来的文件,对其进行修改。

修改完毕后,右键点击该文件,选择Submit,写下变更列表的描述。




3.点击Submit,文件提交到服务器,增加了一个新版本。

在这里需要提醒大家的是,如果将某个文件CheckOut出来后,并没有做任何修改,这时请不要做

Submit操作,而是点击右键选择RevertIf Unchanged,这样提交后就不会增加该文件的版本数了,


否则服务器将会为一个没有做任何修改的文件增加一个版本。

建议在每次修改后思考:为什么要做这些修改?如果所作的修改是没有意义的,那么,建议不要将

这个文件提交(submit),而是Revert你所做的修改。


2.2.2.1.合并文件

合并操作主要用来解决并行开发过程中变更产生的冲突。

例如,当有多人需要对同一个文件同时执行CheckOut操作时,在Submit该文件时,Perforce可能会报错。现举例如下:有AB两人需要同时对CallKeep.cpp文件执行CheckOut操作。



此时可以看到文件CallKeep.cpp的左上角和右上角分别有钩,这说明该文件正在被至少两个人执行

CheckOut操作。由于Perforce支持并行操作,所以AB在执行CheckOut时不会发生冲突,

Submit该文件时就可能报错了。第一个执行Submit操作的人不会出现问题,例如A可以正常提交,

但如果B修改的内容和A修改的相冲突,则B执行Submit时报错,并且会提示服务器上已经有最新的

版本了(即A刚刚提交的版本)




此时B获得最新版本后再提交,仍报错。



且在文件上打个问号,说明服务器不知道该怎么办,因为B需要提交的版本内容和A的相冲突,需要


B给予解决。


这时,选中该文件,右键点击,选择Resolve操作。




Perforce提供了三种自动解决方案,分别是“AcceptMerged”、“AcceptYours”和“AcceptTheirs”。当然,你也可以查看和别人冲突的地方在哪里,进行手动解决冲突。点击RunMerge Tool,显示如下图所示界面。





区域1:显示的是A提交版本中的内容,即目前服务器上的最新版本。

区域2:显示的是AB同时Checkout文件CallKeep.cpp时,当时服务器上最新版本内容,也就是AB修改的基础版本。

区域3:显示的是B自己修改的文件内容。

区域4:显示了三个版本所有冲突的地方,B可以在此基础上对文件做修改,给出解决方案。

选择红线框中的按钮来决定所保留的代码。解决完冲突后再Submit即可。


2.2.3.查询文件历史版本

1.如果想要查询某个文件的任何一个历史版本,右键点击这个文件,选择filehistory


此时Perforce为您取出任何一个你想要的历史版本。双击即可查看




2.2.4.比较两个文件的区别

比较操作主要是用来查看某个文件到底做了哪些修改:从中你可以看出添加了什么,删除了什么等

等。比较两个不同文件或一个文件不同版本之间的区别。右键点击需要比较的文件,选择DiffAgainst命令。

2.按照下图所示,设置需要比较的文件名称或文件的版本等。




3.点击Diff就可以看到如下图所示的所有不同处,包括增加、删减或修改的操作。



在这里需要注意的是:Perforce暂时不支持多个文件的比较。同时,如果在进行两个文件比较时,

文件的大小超过2MBPerforce也会报错,出现以下所示界面:



请大家在操作过程中注意!



2.2.5.同步服务器上文件

如果您在服务器上找到自己所需要的文件,并希望把这些文件同步到本机,这时就需要首先选择好工作区Workspace,然后右键点击需要下载的文件夹,选中GetLastest Revision命令,就可以完成文件夹的同步操作了。


第三章 注意事项

1.合并的BaseFile文件中一行的字数不可以超过6000个字符。否则会报错。

2.在进行两个文件比较的时候,文件大小不要超过2MB,否则会保存错。

3.关于checkout

checkout告诉服务器要修改指定文件,而实际上是把本地文件的属性从只读变为可写,需要注意的是千万不要手动去改文件信息,服务器并不会知道手工修改,这样只会带来不必要的麻烦,这些信息会显示在pendingchangelistsdefualt这个接点下面。

4.关于文件删除

凡在Perforce上的任何删除操作,都由配置管理员统一操作完成。如有删除文件的需要,将需要删除的文件的Perforce上路径发给配置管理员来完成。

5.关于文件类型(filetype)

在签入文件前,首先要查看所签入文件的类型是否包含在已设定文件类型//depot/Misc/Types/typemap.txt文件中作查找),否则为包含的文件类型是不能成功加入perforce配置库的。



  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值