2012-09-04 56 views
0

我是一個基於Mac(10.8)的Web開發人員,試圖與其他基於Windows的開發人員一起工作。他們正在使用SVN,儘管其中大多數不會將文件檢出到本地存儲庫。他們主要通過資源管理器編輯本地服務器上的文件,然後使用TortoiseSVN shell增強功能右鍵單擊並「提交」他們剛纔編輯的內容。跨平臺SVN問題,請解釋

我似乎無法做到這一點,因爲我的首選SVN工具版本(以及Dreamweaver CS6)需要訪問SVN,HTTP等協議。嘗試使用文件系統時出現錯誤。

所以,我正在嘗試命令行,導航到我需要編輯的文件,打開它,編輯,保存。我可以在目錄上運行svn status,並將文件狀態視爲「M」。如果我嘗試svn commit -m "updated" myflie.css或類似的,我得到一個錯誤:

svn: Unable to open an ra_local session to URL 
svn: Local URL 'file://webstage-01/svn/repository/fc-dev/assets/css' contains unsupported hostname 

我看着在.svn文件夾「項」文件的一個看到這一點:

10 

dir 
20788 
file://webstage-01/svn/repository/fc-dev/assets/css 
file://webstage-01/svn/repository 

2012-06-26T16:08:10.220007Z 
20747 
JSmith 

所以看起來這就是它得到的路徑從,這不是有效的MacOS或Unix路徑。

對此提出建議?

回答

0

我不認爲你可以這樣做。 「本地服務器」上的svn文件夾是由特定於平臺的工具創建的,如Windows上的TortoiseSVN。顯然它將具有特定於Windows的路徑等。您將需要單獨簽出並進行提交。

此外,順便說一下,將EOL屬性設置爲「native」,以便您不會遇到跨平臺的EOL問題。

1

這聽起來像本地服務器已經是一個檢出工作目錄,每個人都分享。這是Subversion完全錯誤和可怕的方式。最後,您不知道是誰在進行更改,因爲他們都使用同一個客戶端。另外,不能保證工作客戶端使用相同的工作目錄格式。如果有人在他們的系統上安裝了1.6版的TortoiseSVN,他們可能會損壞該工作副本。

正確的方法是讓每個人都檢出Subversion存儲庫中的內容到本地計算機(Windows或Mac)的本地副本,然後在其中執行更改並將其簽入。您不會遇到以下問題:有人搞亂了那個目錄。你知道誰在做這些改變。如果兩個人試圖同時進行相同的更改,您將不會遇到問題。這是Subversion應該工作的方式。

Mac有Subversion命令行客戶端。 (假設您使用的是Mountain Lion--最新版本)您需要安裝XCode(免費從Mac App商店購買),然後在XCode中安裝command line tools。查看on line Subversion manual並瞭解如何在Subversion中完成結帳,創建自己的工作目錄,並從中檢入。

如果您需要Mac OS X GUI Subversion客戶端,有很多選項。我強烈建議你看看Pathfinder](http://cocoatech.com/pathfinder/)。它有一個內置的Subversion GUI客戶端,但它也有許多Finder增強功能,使其成爲Finder替代品 - 尤其是對於高級用戶。它的價格是40美元,但我認爲它僅適用於內置的終端客戶端。