2012-05-23 36 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%"