问题出现时的环境是这样的:p4d位于Linux服务器中,P4ROOT通过默认方式创建,并没有开启Unicode。客户端有Windows的P4V和Mac的P4V,此时用P4Admin查看服务器状态时可以看到Server Info中的Unicode support:是disabled的,这时在Windows端建立workspace并添加中文的文件、文件夹,Mark for add再Submit到服务器depot后,在Mac端的P4V直接查看Depot上的文件夹和文件时就会看到中文都变成了乱码,Get下来后也是会像%20这样的方式保存成文件名、文件夹名。检查后发现在服务器端没有开启Unicode模式时,客户端P4V中Connections菜单项内的Choose Character Encoding…是置灰的,而Perferences中Display内的Set encoding for all connections to:的选项在Windows上是CP936 GBK,Mac上是UTF-8,正是由于这个客户端非Unicode编码差异导致了Win上上传的中文在Mac下显示为乱码的问题。另外这时如果强制改变P4CHARSET环境变量,或通过命令行p4 set的方式改变连接的字符编码为UTF-8,再打开连接时会得到:“Unicode clients require a unicode enabled server”这样的错误提示!解决方法就是改变p4d服务器端的编码设置为Unicode模式:
Continue reading…
Perforce
Perforce (P4)的文本换行处理设置
CJ过后看到同事拿来的Perforce国内代理商的宣传单,发现已经把有很多游戏开发公司用P4这点作为一个宣传了,再看看目前现在svn项目中的.svn信息所占空间比正式资源还大的情况,决定体验一下这个很多游戏公司都在用的P4!
其实从上学再到工作这些年也接触了不少VCS(或者叫SCM),从VSS,CVS再到SVN,GIT,每次尝试一种新的系统时总会看到很多介绍和之前用的系统比的优势的文章(这点Perforce最是夸张,直接在官网上给出了和其它VCS比较的详细PDF文档,如http://www.perforce.com/sites/default/files/pdf/perforce-cvs-comparison.pdf还有http://www.perforce.com/sites/default/files/pdf/perforce-subversion-comparison.pdf和http://www.perforce.com/sites/default/files/pdf/perforce-git-comparison.pdf看出来商业软件确实是做的比较到位!),虽然很多描述在亲身体会过后感觉并不尽然,不过还是希望P4能带来更多的“然”。
费了这么多话,还是写点正题吧,目前P4也没用的多么深入,更算不上多精通,所以比较之类的话题还是算了吧,记一下关于文本换行处理设置的心得吧。