SVN是否仍然存在冲突?


284

如何使该目录摆脱冲突?我不在乎是否使用“他们的”或“我的”或任何其他方式解决了...

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

93
答案是:[svn解析的文件名]而不是接受的解决方案。
Travis Schneeberger

1
@TravisSchneeberger可以接受的解决方案很好
Hi-Angel

svn resolved *文件名*不适用于我。
reinierpost

Answers:


447

输入以下命令:

svn resolved <filename or directory that gives trouble>

(感谢@Jeremy Leipzig在评论中提供了此答案)


35
认真地说,如果您不关心它的解决方式(也许无论如何都将其删除),这是正确的答案。

1
这什么也解决不了。该错误可能在下一次提交时再次出现。
Tadej

非常感谢,它对我有用!您必须在svn root回购中,才能使用此命令!
GeekHades

276

好的,这是解决方法:

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

有关更多详细信息,请访问:http : //svnbook.red-bean.com/en/1.8/svn.tour.treeconflicts.html


如果您使用的是Eclipse IDE,则还可以应用我的“非命令行”解决方案,我在下面的单独答案中对此进行了描述。
彼得·威珀曼

3
使用svn 1.7.4时,svn help resolve声明它“已被弃用,而赞成运行'svn resolve --accept working”。
wreckgar23年

35

对我来说,仅还原--depth infinity选项已修复Svn的目录仍然存在冲突问题:

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

1
恢复文件的整个目录或文件不再存在
–biology.info

为了解决这些存在于服务器上本地删除的文件冲突,此选项工作..

1
非常感谢。“ svn revert --depth infinity。” 为我工作,并恢复了已删除的文件,这些文件并没有随“ svn up”重新出现
Rauli Rajande

16
  1. svn解决
  2. svn清理
  3. svn更新

..这三个svn CLI命令按此顺序进行cd-ed到正确的目录中后对我有用。


@Elad Tabak:就我而言,我不得不将其放入文件的父目录,这给我带来了麻烦,这可能就是您遇到的问题
Jay Sullivan

11

如果您使用的是Eclipse IDE,并且在提交时偶然发现此错误,那么这里有一个工具内解决方案。我正在使用Subclipse,但Subversive的解决方案可能相似。

您可能没有注意到的是,在有冲突的文件上还有一个附加符号,该符号将文件确实标记为“已冲突”。

右键单击该文件,选择“团队”和“编辑冲突...”。选择适当的操作。之前,我是在文本级别上手动合并文件的,所以我选择了第一个选项,它将把本地副本的当前状态作为“已解决的解决方案”。现在点击“确定”就可以了。

冲突的符号应该消失了,您应该可以再次提交。


2
另外,在目录冲突的情况下,您可以执行“团队->显示树冲突”,然后查看所有这些冲突并将其标记为已解决(在单独的“ SVN树冲突”窗口中)
altumano 2014年

6

下面还有一个解决方案,

如果删除了整个文件夹,并且SVNis抛出错误“管理文件.svn丢失”,则将使用以下方法将冲突解决为工作状态。

svn resolve --accept working "file / directory name "

3

乌龟SVN说明

导航到您看到此错误的目录。如果没有任何更改,请执行以下操作

一个。右键单击并执行“还原”
b。选择所有文件
c。然后再次更新目录


3

我使用以下命令以使用命令行消除冲突

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

用于还原当前目录

svn revert . -R

哈哈哈哈,不,不要这样做。它会做坏事。
猫头鹰

很明显,这会还原您的更改
Ujjwal Roy 19'1 /

它实际上适用于某些问题,例如冲突,只能通过cli来解决
zero8 '19

2

如果您(如我)在解决问题时遇到麻烦,并且由于对资源进行了许多更改而无法删除和更新资源,并且您正在使用eclipse颠覆性替代本机客户端,请执行以下步骤:

  1. 制作整个项目目录的副本
  2. 在Eclipse中执行团队>断开连接,然后选择删除SVN元数据
  3. 然后选择“团队”>“共享项目”,并指向项目所在的同一文件夹
  4. 选择是,然后提交所有内容(您可能希望排除一些非常本地的资源,例如配置文件)
  5. 如果您在第一次提交试用之前已删除或移动了一些资源,则删除那些旧资源(它们应该已经加倍,一个在旧位置,一个在新位置)并提交那些删除。

你完成了。


2

我猜正确的解决方案是:

(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 here is done"

0

我有类似的问题,这是如何解决的

xyz @ ip:〜/ formsProject_SVN $ svn 解析表格Proj / templates / search

解决了“ formsProj / templates / search”的冲突状态

现在更新您的项目

xyz @ ip:〜/ formsProject_SVN $ svn更新

正在更新“。”:

选择:(mc)保持受影响的本地移动,(r)标记已解决(中断移动),(p)推迟,(q)退出解决方案,(h)帮助:r(选择“ r”选项以解决)

解决了“ formsProj / templates / search”的冲突状态

冲突摘要:树冲突:剩余0(已解决1)


0

我在linux上也遇到了同样的问题,但是我无法通过可接受的答案来解决它。我能够通过使用cd转到正确的文件夹然后执行以下命令来解决该问题:

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

就这样。


在第二行中,svn不是syn
Diego Romero Rodriguez
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.