2012-05-23 39 views
4

我正在使用perforce来管理一些代码。我在本地机器和unix机器上设置了一个工作区。然而,最近perforce开始在unix环境中运行代码时引起问题的尾部添加^ M个字符。如何在编辑文件时将本地perforce设置为不执行此操作。我正在使用Notepad ++进行本地编辑设置Perforce行结束

回答

4

我推荐使用Unix行结束符的两个客户端。

尽管有这个名字,Unix行尾仍然会告诉perforce客户端不是,以便在文件同步的时候修改行结束符。在这两个客户端上都设置了这个设置,如果你在Windows上创建一个文件并将其同步到Unix,它仍然会有Windows行结束,但它不应该在Unix上造成问题,并且perforce不会删除/添加导致^ M。

一个小缺点是Windows机器将需要UNIX系列行结束感知实用程序,如Notepad ++,但这听起来不像是一个问题。

在我们的团队环境中的Unix,Mac和Windows都使用该软件仓库,我们所有的客户是由[UNIX]服务器上的一个简单的一行触发强制Unix行结束符,这样没有人受到这个问题(这也迫使submitunchanged和rmdir,但你可以选择剥离这些):

clientspec form-in client "sed -i -e s/LineEnd.*/LineEnd:unix/ -e s/submitunchanged/revertunchanged/ -e s/normdir/rmdir/ %formfile%"