首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Perforce:防止Perforce更改文本文件格式。

Perforce:防止Perforce更改文本文件格式。
EN

Stack Overflow用户
提问于 2010-01-28 18:47:02
回答 5查看 8.6K关注 0票数 14

是否有一种方法可以告诉Perforce不设置文本文件而不将文件类型设置为二进制?否则,有没有办法让Perforce客户端区分二进制文件?二进制通常是不可取的,因为我失去了区分的能力。

为了澄清:如果我编辑并更改了窗口客户端上的*.txt文件,新行将按照DOS格式拥有CR+LF。但是如果我在Unix客户机上同步P4,它将只具有LF。我需要Perforce保持格式不变,不管Perforce客户端住在哪里。

尽管如此,我确实有一个解决方案:将文件类型设置为二进制;和/或创建一个将文本文件设置为" text“的分支,并定期集成回主行,其中文本文件被设置为”二进制“。但这是一个过于复杂的解决方案--应该是一个非常简单的问题。

最后,我在Perforce Windows 2006.2上。

提前谢谢。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-01-29 10:40:58

将所有客户端/工作区规范设置为“unix”行尾。然后,当您在Windows上签入时,将不会发生转换。

请参阅文章/CR-LF-问题-文本-行-结尾/

票数 10
EN

Stack Overflow用户

发布于 2010-01-28 20:16:09

Perforce客户端可以在同步到不同平台时正确处理行结束,前提是您在客户端上正确设置了LineEnd选项。也许你把你的错了?打开您的客户端规范并根据您的需要设置LineEnd选项。

查看他们网站上的这篇KB文章以获得更多信息。以下是一段节选:

在服务器端,Perforce使用Unix样式的LF行尾处理所有文本文件.尽管Perforce在操作系统的本机线路终止约定( Windows上的CR/ LF,Unix上的LF )中将服务器存档文件存储在磁盘上,但对于内部Perforce服务器操作(如p4同步、p4 submit和p4 diff ),所有行尾都标准化为Unix样式的LF行结束。 在客户端工作区端,行尾的Perforce处理由每个客户端规范的全局选项决定。当您使用p4同步将文本文件同步到客户端工作区,或将它们提交回Perforce服务器时,它们的行尾将按照clientspec LineEnd部分中的指定进行转换。

票数 5
EN

Stack Overflow用户

发布于 2010-02-08 16:35:56

当向Perforce添加希望被视为二进制的文本文件时,请使用带有-t选项的命令-t覆盖类型映射表。请参阅文档这里。给出的例子是p4 add -t binary file.pdf

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2157025

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档