2011-10-21 45 views
6

我最近升級了我在工作站上安裝的SVN和TortoiseSVN的版本,每當我檢查文件上的差異而沒有做任何修改時,我會得到以下錯誤。爲什麼SVN無法找到修復庫的位置0

Unable to find repository location for "<path>" in revision 0 

我已經簽出了我的一個項目的新鮮副本(我試了幾次),它仍然給了我相同的結果。

我試過在我的工作站上升級SVN,希望能解決這個問題(我認爲是不兼容) - 沒有骰子。

我也嘗試徹底重新安裝TortoiseSVN - 再次,沒有骰子。

我所做的唯一有趣的事情是移動原始存儲庫的位置(存儲在文件系統中,而不是數據庫)。但是它的路徑和錯誤信息是一樣的,所以我相信它找到了存儲庫。

還有什麼可能是原因?

+0

要明確一點,我已經檢查了項目,因爲我將它移到了我的網絡驅動器上。 – BIBD

+0

移動過程中是否修改了回購網址?在哪個版本之後你沒有搬回購?你可以訪問*移動前創建的任何修訂*嗎? –

回答

4

這似乎是在沒有任何更改的情況下檢查文件上的差異的預期結果。我期待的結果是「文件是最新的」,但回到舊版本的TortoiseSVN上,我確信自己仍然在工作,這給了我一個未經編輯的文件的結果。

+1

+1的repo歷史記錄,用於檢查文件上的差異changes'。當文件實際上沒有以前的版本時,這就是我試圖「與以前版本不同」的問題。這是一個曾經添加過的文件,並且在後來的數百個修訂中根本沒有被修改過。 –

2

您的第一個修訂版(修訂版0)可能沒有「trunk」,「branches」或「tags」目錄。他們通常在初始入住時添加(修訂版1)。因此,如果您將「svn switch」切入其中一個目錄(通常是將其切換到「trunk」目錄),那麼在該目錄中詢問版本0會正確給您一條錯誤消息,在版本0中找不到路徑「<svnrepo>/trunk」,所以無法獲取該版本並仍然遵循先前的「svn switch」命令。

嘗試「SVN開關」爲項目名稱,沒有進入任何子目錄,我敢打賭,你就可以拉起修訂0

+0

如果我在存儲庫的新位置簽出了一個新副本,這是否有問題?我遇到過這個新副本? – BIBD

+1

不是。除非您檢出版本庫的「根目錄」,否則不應期望獲得版本0的良好檢出。在版本0中,通常只有版本庫的「根目錄」存在。這是以後添加的所有東西(在其他版本中)添加非根路徑和文件。 –

+1

請記住,「trunk」,「branches」,「tags」等不是內置到subversion中的,它們是在創建後將其簽入到存儲庫中的項目。它們通常不在修訂版本0中。這意味着您無法在修訂版0中檢查它們(通過任何方式),甚至無法通過檢出「https:// myserver/myproject/trunk」的方式進行檢查。對於版本0,只有「https:// myserver/myproject」結帳纔有意義。 –

1
$ svnadmin create /path/to/repos 

這在目錄中創建一個新的存儲庫/路徑/到/倉庫。這個新的版本庫始於版本0,其定義爲,它不包含任何內容,而是頂級根(/)文件系統目錄。最初,版本0還有一個修訂版本屬性svn:date,它被設置爲創建版本庫的時間。

+0

您是否說錯誤消息是您對文件進行比較時沒有更改的預期結果? (注意:我已經回答了我的問題,因爲你回答了) – BIBD

+0

期望爲0 resision,因爲它是特殊情況 - 你可以在'svn log filename'中看到文件**真的出現在回購中(它必須是rev 1或2,我認爲) - 請參閱我的示例中的http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk/Hello.en.txt –