2010-10-20 56 views
2

我知道我是如何到達這裏的:我嘗試將整個目錄樹添加到我的存儲庫,但是其中一個子目錄沒有寫入權限。所以,當我做了svn add,我得到了錯誤(我沒有記錄,對不起)。如何解決尚未添加到存儲庫的鎖定目錄?

現在,如果我在目錄中執行svn status,我會得到一個完整的文件列表。好極了!但是當我嘗試一個svn提交時,我得到了「目錄鎖定」錯誤。按照指示,我運行svn cleanup,並被告知我以前沒有權限的目錄是「不是工作副本目錄」。

如果我svn解鎖--force,我被告知目錄被鎖定。

這是我的目錄副本,似乎沒有辦法提交它。當我在另一個工作副本上進行SVN更新時,我得到了目錄但沒有其他文件。再次,當我在這個工作目錄中運行svn status時,我得到了很長的文件列表。

我害怕「刪除和結帳」解決方案,因爲我只有存儲庫中的頂級目錄。我試圖讓這些文件

我擔心,如果我遞歸刪除該頂級目錄下的子目錄中的所有.svn目錄,那麼我將創建更大的衝突。我不想深入挖掘自己的洞。

有沒有從岩石之間的路和困難的地方?另外:事實是,我的存儲庫證據非常容易,我應該尋找替代SVN的證據?對目錄沒有寫權限是軟件應該優雅地失敗的條件。我不能保證它不會再發生。

+0

您是否嘗試過檢查後備箱,然後複製/粘貼您更改過的文件在頂部或添加爲新的然後提交? – 2010-10-20 22:44:15

+0

svn不會讓我添加爲新的,因爲它「已經在版本控制之下」。但是我不能提交它們,因爲它「不是工作副本目錄」。 – 2010-10-20 23:01:13

回答

2

首先製作工作目錄的完整副本。

將工作目錄的問題轉移到svn樹的某處。更新並提交。如果它返回,請從您的修訂中刪除目錄本身,然後再次提交。這應該解決了衝突。現在遞歸地從問題目錄中刪除.svn文件夾,並將其複製回目標位置。重新添加到svn,並提交。

它笨拙嗎?是。它解決了問題嗎?這應該。

顛覆傾向於有一些有問題的區域。當你使用它時,你傾向於學習如何解決它們。 SVN和DVCS往往有不同的用例,適合不同的項目管理風格。 DVCS也有它的疣。

0

難道你不能只複製文件到你的其他工作副本,而不復制.svn目錄,然後從那裏做一個添加和提交?

相關問題