Perforce更改了行尾。

| 我在Mac上有一个项目,并将其上传到perforce服务器。当我从PC获得项目时,所有行尾都已更改,现在无法在PC上编译。有没有办法像以前一样自动更改行尾,或者我必须从Windows重新提交所有项目?有什么办法可以使perforce保持其原样?我真的不想在源文件中进行愚蠢的修改。 谢谢! 编辑: 这与perforce有关,我刚刚在MAC上编辑了10-20个文件,以编译一个多平台项目。其余的140k文件没有更改,甚至没有在Mac上打开(它们由编译器打开以编译它们:P)。如果我在PC上复制项目,则行尾可以。     
已邀请:
文本文件的行尾由您的客户规范设置控制。您需要确保正确设置了客户的\'LineEnd \'值。通常,应将其留给\'local \',它对于所使用的任何操作系统都应做正确的事情。 就是说,根据最初上传文件时Mac上此值的设置方式,我认为将这些文件同步到PC时可能会出现问题。 我将检查以确保为您的客户将LineEnd设置为\'local \'。在此处的Perforce知识库站点上有一条注释,其中更深入地讨论了Macintosh客户端的正确设置。也可以从那里开始,以确保在Macintosh上正确配置了所有内容。     
是的你可以。对于两个客户端都使用Unix行尾,将告诉perforce客户端保持文件提交方式不变。您还可以在服务器上设置触发器以强制这种方式,请参阅我对这个问题的回答: 设置Perforce行尾     
尽管确实可以解决问题,但这与perforce确实没有任何关系。 http://kb.perforce.com/article/63 UNIX,PC和Mac计算机上的行尾都不同。这就是您所看到的。通过任何介质在PC和Mac之间传输相同的文件将具有相同的结果。如果您想以另一种方式解决此问题,则可以在Mac上设置您的编辑器以保存带有Windows行尾的文件。 我错了“ Perforce使用Unix风格的LF行尾处理所有文本文件”。我会检查p4客户端的LineEnd值(我认为应该在两台计算机上都是本地的),并确保您使用的p4版本> = 2001.1     

要回复问题请先登录注册