2014-07-16 95 views
1

我在創建分支時意外刪除了一個文件,我無法弄清楚如何在不丟失文件歷史記錄的情況下恢復它。SVN複製到工作副本,無法刪除文件(提交之前)

我做

我正在使用TortoiseSVN(1.8.2)。我做

right-click, drag, release and select "SVN Copy and rename versioned item here" 

我以爲我什麼也不做(具體地講,我沒有犯下新的分支在我的工作拷貝)複製一個分支。

儘管發生了一些事情 - 它可能是飛行員錯誤,我不確定 - 但底線,文件(NewBranch/app/web/classes/config.properties)沒有顯示在列表中。 不知何故,我刪除了該文件。

當我檢查了修改

right-click, TortoiseSVN -> Check for modifications 

文件的分支&文件夾出現狀態爲「正常(+)」,但有兩個例外:

  • 分支的根文件夾(NewBranch)出現狀態「加(+)」
  • 此config.properties文件顯示狀態「已刪除(+)」

TortoiseSVN顯示一個紅色的「!」作爲父文件夾(NewBranch/app/web/classes)的狀態,併爲其父(web)及其父(app)和分支根(NewBranch)提供相同的狀態。

修復它?

  1. 我試圖在「檢查更新」輸出窗口「右鍵單擊,還原」的文件 - 它給了我一個錯誤

    「不能沒有恢復父恢復」。

  2. 我試着對父文件夾及其父文件進行「還原」,直至分支根文件 - 我沒有收到錯誤,但文件不再顯示。

  3. 我試圖從舊分支複製文件到這個文件夾 - 它說我加入該文件!

Arrg。

我想將文件不刪除&保存其歷史。如果必須的話,我會複製文件 - 但是,有什麼想法?

回答

1

只要你沒有承諾你沒有損失太多。

由於固定(「恢復」)的工作副本是造成問題,我會重新結賬開始:

只是檢查出你想要分支,選擇TortoiseSVN->分支/標籤的文件夾。 選擇分支/文件夾並添加您的branchname。通過這個,創建一個分支(在你的工作拷貝中也沒有創建它)要容易得多。

+0

**完美。**刪除舊的WC,確保我恢復了「源分支」中的任何雜散修改的文件,重新執行副本:獲得了乾淨的複製分支。 _謝謝!_ –

相關問題