最近一直在学习使用perforce,作为一个典型的C/S,其实大部分人可能只需要用到它的客户端,也就是P4V(另一个叫P4WIN的其实可以算是p4v的老版,现在的P4V是在P4WIN的功能基础上又完善了的,还有一种叫p4web在我看来其实就是网页客户端。p4v和p4web的关系有点像是QQ和WEBQQ)。perforce是个版本控制软件,所谓的版本控制软件,根据我个人的理解就是——为整个项目开发过程中所产生的任何文件都建立一个纪录,并可以调用或修改这些纪录。这样做的好处是,你不用再每次修改完一个文件后将它另存为一个新的,然后将旧文件和新文件放在一个你自己定义的文件夹下,将文件夹命名为比如说“这里是我的XXX项目(里面包含了我的各种新旧版本)”(当然,应该没有人会这样命名吧,我只是打个比方,呵呵,或者你可以当它只是个玩笑。),然后当你想打开你某个时间所完成的那个时,靠着你惊人的记忆力来回忆到底是哪一个文件。perforce可以代替你完成保存每一个修改版本的任务,同时为它们加上注释,而你要做的只是点几下鼠标然后输入一段描述作为提示。好吧,也许你会说,“我就是记忆力好,我完全清楚的知道我文件夹中的project_1,project_2,project3是什么。”,但是老话说的好,好记性不如烂笔头,而事实上人的记忆力大部分都是会减退的(^_^因为big bang中的谢耳朵是个例外~),你敢拍着胸脯说你五年后十年后还记得那些project_X是什么吗?咳咳,要声明的是我并不是在帮perforce做广告,版本控制的软件有很多,而刚好我接触的第一个就是perforce而以。你可能会好奇为什么我没有提到关于perforce在企业项目中的作用,因为这些作用在随后的一些操作中能够充分体现出来,所以我就先不赘述了。
好了,解释完我对perforce这个软件功能的概念后(也许上面那些有废话的嫌疑,但毫无疑问的是当我刚接触perforce的时候,我确实希望能有找到关于perforce功能的解释,而且是尽量通俗易懂而非学术报告式的),接下来说说p4v这个软件所要用的基本概念,你可能在很多书或论坛上看到更多的关于基本概念的可能是depot或是submin,changelist,branch之类的,但我想先说说的是关于P4PORT,P4USER和P4CLIENT,你打开P4V其实并看不到这三个词,取而代之的是“server” "user" "workspace",关于这一点我会在下面作解释。好吧,我知道这样不够严谨不够科学,但我只是顺着我自己的思路来写这篇教程,我本来就不喜欢过于规范的学习之路,请把它当作我个人的小任性吧——或者是小个性。呵呵回来原来的话题,为什么要先提这三个,我不能保证我所说的一定是正确,但我确实按这样的步骤达到了我的目的,当你作为一个perforce客户端(这里我使用的都是P4V)用户时,你想要连上一个perforce服务器然后把上面的文件都copy下来,这几个是必须的,因为它就出现在你刚打开p4v这个软件时。让我把它们分开来向你解释:
1.P4PORT: 你需要填上你们项目组存放所有文件的那个服务器(server)的端口(或者可以说是perforce的服务器,如果你只是个人用户,只是想管理你本机上自己的项目时,填上127.0.0.1:1666就好,当然,这需要你先安装了p4d)
2.P4USER: 你即是用户(user),也许你是项目开发团队的一份子,也许你只是个埋头自己课程设计的学生,但这都没有差别,你需要告诉服务器,你是一个用户,你需要使用perforce的功能。
3.P4CLINET: 也许你已经翻过perforce的官方手册,对perforce有了一些基本的了解,你经常可以看到里面提到workspace和client,你可能会困惑,因为它们的功能看起来很相似,但其实它们就是同一个东西。好吧,也许你认为我说的话很蠢,但我不得不承认我就犯过这样的错误,我竟然一直以为它们是两个不一样的东西。作为一个制造者,你需要有一个你自己专门的工作区域(哈哈,也许你更喜欢“文件夹”这个名字),在里面放了你的素材、你的文件之类的,然后你新建修改或是删除,也许你还对perforce的对版本管理的机制没有明确概念,但请相信我,当你真的开始使用那些文件时,你就会明白了,而这里我要说明的是你确实需要workspace(或者你想叫它client),然后对它进行合理的设置。关于设置我会在之后附上图片进行说明。
×××我才拙,偏偏又是个话多而闲不住的主儿,趁着午休的空档,先写点下来,欢迎大家的指教——无论你想说什么,我都想听听看,有则改之,无则加勉。^_^