2012-08-07 151 views
1

我已經添加了一個文件(比如SomeFile.cs)到一個特定的文件夾。我沒有提交,因爲我想在實現功能後立即提交。一個svn更新工作得很好,直到有人更改了文件夾名稱並更改了它下面的文件名稱。SVN:如何將文件添加到svn而不是提交

現在第二天,當我做了svn checkout,導致了樹狀級別的衝突,所以我將我新添加的文件複製到這個「新」位置,並做了「使用他們的解決方案」。

解決方案刪除了​​所有本地文件,並用新文件夾和文件替換。我在整個計算機(includint回收站)中找不到本地文件(位於我的工作副本中)。

現在是否至少有一個選項來檢索添加到svn的文件(「添加」選項),而不是使用「Commit」提交給svn? Regards

回答

0

AFAIK,只有提交給svn的文件纔會被恢復。但是,如果您將衝突與他們合併,那麼它會覆蓋本地的更改。

0

嘗試「更新到修訂」,但由於您的文件沒有被提交,所以最有可能在最好的情況下恢復您的目錄結構。
通常「使用他們解決」選項相當於說「我搞砸了,他們是對的」 - >我擁有的任何東西都是錯的,他們擁有的東西是正確的 - >覆蓋我的副本。

0

你所要求的與SVN的工作流程相差無幾。事物在提交之前不會被存儲在存儲庫中,因此不「安全」。你應該經常提交。

如果您正在努力工作,但擔心其他人的樹木變化妨礙您的行爲,請考慮製作分支。 http://svnbook.red-bean.com/en/1.7/svn.branchmerge.html

但是,SVN不應該覆蓋您的本地工作副本中有修改的文件。如果你做了svn更新,並且有人添加/改變了某些東西,你將會得到一個「衝突」,你必須手動解決。您手動解決了這些衝突,並意外覆蓋了您的工作。這就是你應該經常做的原因。你提交的任何內容都可以恢復。