2010-03-09 73 views
252

如何讓該目錄脫離衝突?我不在乎,如果它使用「他們」或「我的」或任何解決...SVN仍然存在衝突?

PS C:\Users\Mark\Desktop\myproject> svn ci -m "gr" 
svn: Commit failed (details follow): 
svn: Aborting commit: 'C:\Users\Mark\Desktop\myproject\addons' remains in conflict 

PS C:\Users\Mark\Desktop\myproject> svn resolve --accept working C:\Users\Mark\Desktop\myproject\addons 
Resolved conflicted state of 'C:\Users\Mark\Desktop\myproject\addons' 

PS C:\Users\Mark\Desktop\myproject> svn ci -m "grr" 
svn: Commit failed (details follow): 
svn: Commit item 'addons' has copy flag but an invalid revision 

PS C:\Users\Mark\Desktop\myproject> svn update 
    C addons 
svn: Can't move 'addons\debug_toolbar\templates\debug_toolbar\.svn\tmp\entries' to 'addons\debug_toolbar\templates\debug 
_toolbar\.svn\entries': The file or directory is corrupted and unreadable. 

PS C:\Users\Mark\Desktop\myproject> svn cleanup 

PS C:\Users\Mark\Desktop\myproject> svn update 
Skipped 'addons' 
At revision 51. 
Summary of conflicts: 
    Skipped paths: 1 

PS C:\Users\Mark\Desktop\myproject> svn ci -m "grrr" 
svn: Commit failed (details follow): 
svn: Aborting commit: 'C:\Users\Mark\Desktop\myproject\addons' remains in conflict 
+89

答案是:SVN解析文件名] 做到這一點,而不是接受解決方案 – 2011-04-19 20:35:44

+1

@TravisSchneeberger接受的解決方案是好的 – 2016-03-29 08:35:58

回答

388

給下面的命令:

svn resolved <filename or directory that gives trouble> 

(感謝@Jeremy萊比錫這個答案在評論)

+32

說真的,如果你不在意它是如何解決的(也許你只是要刪除它),這是正確的答案。 – invertedSpear 2011-08-26 21:00:51

+0

這並不能解決任何問題。在下次提交時,錯誤可能會再次出現。 – JedatKinports 2017-04-07 08:42:54

+0

非常感謝,它適合我!你必須在你的svn root repo中,你可以使用這個命令! – GeekHades 2017-07-04 02:40:56

268

確定這裏是如何解決這個問題:

svn remove --force filename 
svn resolve --accept=working filename 
svn commit 

更多詳情載於:http://svnbook.red-bean.com/en/1.8/svn.tour.treeconflicts.html

+83

在svn 1.4這很簡單:svn resolved filename – 2011-03-09 14:56:35

+1

你在調用svn resolve後錯過了'svn add' – JamesHalsall 2012-07-12 15:57:04

+4

這不是最好的答案。使用svn解析文件名。 – 2013-03-12 01:17:20

2

如果你有麻煩解決(像我一樣),你不能刪除和更新的資源,因爲你已經對他們的許多變化,再加上你使用的是Eclipse的顛覆,而不是本機客戶端,請按照下列步驟操作:

  1. 會讓你的整個項目的副本DIR
  2. 蝕內執行團隊>斷開連接,並選擇刪除SVN元數據
  3. 然後選擇團隊>共享項目,並指向您的項目位於
  4. 非常相同的文件夾
  5. 選擇是,並承諾一切(您可能希望排除一些非常本地的資源,如配置文件)
  6. 如果您在第一次提交試用版之前已刪除或移動了一些資源,請刪除那些舊資源(它們應該已加倍,舊位置一個,在新的)並提交這些刪除。

你完成了。

10

如果您正在使用Eclipse IDE並在提交時偶然發現此錯誤,則可以爲您提供一個工具內解決方案。我使用的是Subclipse,但Subversive的解決方案可能類似。

您可能沒有注意到的是,衝突文件上有一個附加符號,它將文件確實標記爲「衝突」。

右鍵單擊該文件,選擇「團隊」和「編輯衝突...」。選擇適當的操作。我之前在文本級別上手動合併了文件,因此我採用了第一個選項,將本地副本的當前狀態視爲「已解決的解決方案」。現在點擊「確定」即可。

衝突符號應該已經消失,您應該能夠再次提交。

+2

此外,在目錄衝突的情況下,你可以做「團隊 - >顯示樹衝突」,然後檢查所有這些衝突並將它們標記爲已解決(在單獨的「SVN樹衝突」窗口中) – altumano 2014-01-16 08:18:48

5

下面一個更解決方案,

如果整個文件夾被刪除和svn拋出錯誤「管理文件.svn文件丟失」,下面就已經使用來解決衝突到工作狀態。

svn resolve --accept working "file/directory name " 
10
  1. SVN決心
  2. 清理命令
  3. SVN更新

..這三個svn CLI命令在這個序列中,而cd-ed進入正確的目錄爲我工作。

+2

沒有爲我工作。 .. – 2014-07-31 11:36:10

+0

@Elad Tabak:在我的情況下,我不得不這樣做到文件的父目錄給我的麻煩,這可能是你碰到的 – 2015-02-12 20:28:53

+0

svn resolved'需要一個參數 – 2015-07-10 08:36:30

24

對我來說只有復歸--depth無窮選項固定 SVN的目錄仍然confict問題:

svn revert --depth infinity "<directory name>" 
svn update "<directory name>" 
+0

來恢復整個文件目錄或一個文件不存在 – 2015-07-10 12:46:51

+0

要解決服務器上存在的本地刪除文件的衝突,此選項工作.. – Neo 2017-03-14 00:19:46

0

我有類似的問題,這是它是如何解決

XYZ @ IP: 〜/ formsProject_SVN $ svn resolved formsProj/templates/search

已解決'formsProj/templates/search'的衝突狀態

現在更新項目

XYZ @ IP: '' 〜/ formsProject_SVN $ SVN更新

更新:

選擇:(MC)保持受影響的本地移動, (R)標誌解決(打破移動),(p)推遲, (q)退出分辨率(H)的幫助:[R(選擇 「R」 選項來解決)

解決了「formsProj/TE衝突狀態mplates /搜索」

衝突概要: 樹衝突:0其餘的(和1已經解決)

2

我想propper解決辦法是:

(1) backup your-file/your-directory 
(2) svn revert your-file/your-directory 
(3) svn update your-file/your-directory 
(4) Merge the backup your-file/your-directory to the updated one. 
(5) svn ci -m "My work done" 
+0

svn恢復解決了我的問題 – Aditzu 2016-12-20 15:42:13

1

說明烏龜SVN

導航到您看到此錯誤的目錄。 如果您沒有任何更改,請執行以下操作

a。右鍵單擊並執行'還原'。
b。選擇所有文件
c。然後再次更新目錄

0

我在Linux上有同樣的問題,但我無法用接受的答案解決它。我能夠通過使用cd去正確的文件夾,然後執行來解決它:

svn remove --force filename 
syn resolve --accept=working filename 
svn up 

這就是全部。

0

我用下面的命令才能使用命令行

svn revert "location of conflict folder" -R 
svn cleanup 
svn update 

以消除衝突的恢復當前目錄

svn revert . -R