2013-03-24 17 views
2

我們使用TortoiseSVN GUI進行我們的日常修訂控制活動。SVN錯誤「<folder>已經是另一個URL的工作副本」究竟是什麼意思?

我試圖設置CruiseControl.Net,連接到Linux機器上的SVN存儲庫。什麼樣的惡夢!我們應該說,「挑戰」是在Windows上獲得svn命令行來連接到SVN Linux服務器。耶,現在所有人都在工作。在我的Windows命令提示符下,我可以鍵入

svn co svn+ssh://[email protected]/repos/QTSS 

並且它將QTSS存儲庫複製到我的Windows機器上。因此,使用上面的'svn co'命令,我完成了對CCNet工作文件夾的完整結帳:C:\users\build\repos\QTSS

在repos/QTSS/trunk文件夾下面,我們有許多子文件夾,每個它自己的VS2010解決方案源文件。爲了順應CCNet,我爲其中一個子文件夾配置了一個名爲SparsePointSurface的CCNet項目;最終我會爲每個子文件夾建立一個CCNet項目。當CCNET運行時,它給人的錯誤:

Source control operation failed: svn: E155000: 'C:\Users\build\repos\QTSS\trunk\SparsePointSurface' is already a working copy for a different URL 

在Windows命令提示符窗口,我cd到該文件夾​​,然後鍵入

svn checkout svn+ssh://[email protected]/repos/QTSS/trunk/ C:\Users\build\repos\QTSS\trunk\SparsePointSurface --no-auth-cache --non-interactive 

這是相同的命令CCNET正在發出。果然,我在命令提示符處發生了與CCNet中相同的錯誤。所以這是SVN的問題,而不是CCNet。

這個SVN錯誤究竟意味着什麼,我該如何解決?儘管有很多谷歌搜索,我還沒有找到這個錯誤的原因和解決方案的很好的解釋。大多數情況是svn switch/merge操作出現問題,但這不是我想要做的。

請注意,在TortoiseSVN GUI中,我可以右鍵單擊File Explorer中的SparsePointSurface,選擇「SVN Checkout」並且它工作正常。

+0

dupe:http://stackoverflow.com/questions/933390/try-to-svn-checkout-but-get-svn-is-already-a-working-copy-for-a-different – Daedalus 2013-03-24 22:05:36

+0

我不' t認爲這是一個騙局,因爲它看起來像SVN已經擁有的文件夾中有多個簽出,這將導致svn拋出一個合法的搖擺。 – 2013-03-24 22:35:18

回答

1

好的我終於找到了解決方案。在我的ccnet.config中,我有項目,svn控制塊和msbuild任務都指向'C:\ Users \ build \ repos \ QTSS \ trunk \ SparsePointSurface'。我用WD將項目和svn控制塊更改爲'C:\ Users \ build \ repos \ QTSS \ trunk \',這是.svn文件夾所在的位置。我將msbuild任務的WD離開到.sln文件的特定位置。最後在CCNet下成功構建。活泉!謝謝Chris Henry;你的意見讓我走上修復之路。

0

任何你每次退房的原因?

這個錯誤通常意味着你正試圖將一個SVN倉庫結帳到一個已經顯示在SVN控制下的文件夾中。至少在早期版本的SVN中,您可以通過查找.svn文件夾來告訴文件夾處於SVN控制之下。

在我看來,你應該在克魯斯控制內做一個更新,而不是完整的結帳。或者,您可以每次都進行全面結帳,但您需要刪除當前所有文件。

+0

...或者,每個CCNet項目都檢出到自己的文件夾中。我更喜歡那種分離。 – 2013-03-25 11:24:07

+0

我沒有專門做結賬。我的CCNet svn源代碼控制塊非常簡單,只包含標籤。我手動欺騙我的SparsePointSurface文件夾強制CCNet必須檢出文件並執行構建。 CCNet調試跟蹤表明它正在執行檢測修改的svn log命令,然後CCNet發出svn checkout。 – TJH 2013-03-25 15:13:15

+0

.svn文件夾位於QTSS文件夾中。我只是沒有很好的理解爲什麼SVN給出錯誤。我在我的存儲庫的子文件夾中,並告訴SVN在服務器上完成相應文件夾的簽出。使用TortoiseSVN GUI時,此操作正常工作的事實使我更加困惑。 – TJH 2013-03-25 15:19:04

相關問題