2016-10-21 33 views
1

我創建了一個文件,我們稱之爲myfile.c,並將其放入Subversion目錄中。然後我從目錄中刪除它,但沒有從目錄中刪除rm(我想,雖然這是前一陣子,但我不太確定那是發生了什麼事)。在某個時候,我創建了該文件的新版本,也稱爲myfile.c(已經在本地刪除了原始文件),並嘗試添加並提交此文件。但是,我得到的錯誤:Subversion丟失文件怪異

myfile.c is scheduled for addition but is missing. 

所以我做svk st,我覺得這一點:

?  myfile 
?  myfile.c 
!  myfile.c 
從其他職位我讀,以刪除丟失的文件,我可以運行此腳本

所以:

svn rm $(svn status | sed -e '/^!/!d' -e 's/^!//') 

,我做到了,但得到的錯誤:

myfile.c is not under version control 

從另一篇文章中,我收集到了這個問題,我必須承諾或回覆。然而,承諾不工作(如上所述),當我嘗試恢復並再次提交,我得到的錯誤:

myfile.c is scheduled for addition, but is missing 

這是相當令人沮喪,而且似乎所有的其他論壇處理一個這個問題的方面,但不是全部。如果有人有解決方案,將不勝感激。

回答

0

開始通過重命名你的新myfile.c暫時將它放在一邊:

mv myfile.c myfile.c-newfile 

然後執行更新,以恢復原來的myfile.c

svn update 

然後,您可以選擇提交去除在添加新文件之前添加舊文件,或者僅使用新文件覆蓋舊文件。