2012-12-06 54 views
6

由於硬盤故障,我最近不得不重新安裝Windows ..幸運的是,我將所有源文件放在另一個磁盤上。將源文件重新附加到現有SVN

在我之前的安裝中,我使用的是我剛剛在新機器上重新安裝的Tortoise SVN(幾個月後)。

如何將我當前的源文件重新鏈接到SVN存儲庫?

我擔心,如果我點擊錯誤的東西,它會更新我的本地副本與服務器上的內容。

謝謝 豐富。

+0

請解釋在Update你WC本地更改將被合併(自動或手動), - 但yuo'll得到通知,並在惡劣情況下的指令)

您可以不用擔心的局部變化那就是「你的來源」,它們如何與回購中的文件狀態相關聯,你有(有)你的存儲庫。如果你只有沒有遠程倉庫的工作拷貝 - 你失去了歷史 –

+0

我的'源文件'是我存儲在SVN(c#的源代碼文件)中的文件。我的新機器上仍然有一切完好無損,並且我在本地對代碼進行了更改。 SVN仍然具有原始版本和所有歷史記錄。我認爲最糟糕的情況是,我必須退房,然後將所有更新的文件複製到頂部,然後進行更新,但希望能夠以更簡單的方式執行此操作。 –

回答

6

您首先需要創建一個工作目錄並且唯一的方法是執行結帳並從服務器獲取文件。

但是,當你說源文件,你的意思是工作目錄,你可能會在運氣呢。 源文件包含那個.svn目錄嗎?如果是這樣,你有一個工作目錄,並且恢復你的新機器上的工作目錄應該工作得很好。只要確保你使用的是舊系統上使用的相同版本的TortoiseSVN:特別是如果一個版本是1.7版之前的版本,另一個版本是1.7版之後的版本。這是因爲工作副本佈局從版本1.6.x更改爲版本1.7.x.查看您的Subversion工作目錄的每個目錄中是否有.svn目錄,或僅在根目錄中。如果它只在根目錄下,請使用TortoiseSVN 1.7或更高版本。如果它在所有目錄中,請使用TortoiseSVN 1.6.x版。

如果你沒有那些.svn目錄(並且它們可能被隱藏),那麼你沒有工作目錄。你必須做結賬,然後手動移動那些不同的文件。看看Beyond Compare來幫助你完成這項任務。

+0

我仍然擁有結構中的所有'.svn'目錄。是否有恢復選項? –

+0

你身材很好!將整個結構複製到新計算機。如果所有目錄中都有'.svn'目錄,請確保您安裝了TortoiseSVN 1.6.x.如果你只有根目錄中的'.svn'目錄,而不是子目錄,則安裝TortoiseSVN 1.7。 –

+0

嗨,我的源文件只有根目錄中的'.svn'目錄,所以它似乎沒問題..我沒有做的一件事是重新啓動我的機器。只要我重新啓動,所有的小svn圖標開始顯示在我的文件旁邊,所以這一切都很好..我一點都不擔心!謝謝你的建議。 –

2

由於您的源代碼位於存儲庫的工作副本(副本)(您擁有.svn子目錄)中,所以只需安裝TSVN即可安裝TSVN,您也可以使用repos繼續工作(版本兼容性警告仍然適用,與傳入更改

+1

感謝您的幫助懶惰 –