当我执行svn status .
时,我会得到这样的结果:
! C auto-complete-config.elc
> local edit, incoming delete upon update
! + C auto-complete.elc
> local edit, incoming delete upon update
! + C popup.elc
> local edit, incoming delete upon update
! + C fuzzy.elc
> local edit, incoming delete upon update
基本上,这些文件不应该在存储库中。开发人员已将其删除。然后,我想我在事后错误地做了一个svn rm ...
(应该做svn update .
)。
所以现在,当我执行svn status .
时,我得到了这些树冲突消息。
我找到了文档here,但不确定如何根据文档“合并”它。
如何摆脱它们?
我认为我的工作副本与存储库同步。不知道为什么会显示这些消息。这些文件应该被删除,据我所知,所有地方都应该删除这些文件。我尝试了svn update .
和svn revert .
,但在执行svn status .
时仍然收到此消息。
发布于 2010-12-19 02:20:07
简短版本:
$ svn st
! + C foo
> local edit, incoming delete upon update
! + C bar
> local edit, incoming delete upon update
$ touch foo bar
$ svn revert foo bar
$ rm foo bar
如果冲突是关于目录而不是文件,那么将touch
替换为mkdir
,将rm
替换为rm -r
。
注意:同样的过程也适用于以下情况:
$ svn st
! C foo
> local delete, incoming delete upon update
! C bar
> local delete, incoming delete upon update
长版本:
当您编辑一个文件,而其他人先删除该文件并提交时,就会发生这种情况。作为一个好的svn公民,您应该在提交之前进行更新。现在你有了一个冲突。意识到删除文件是正确的做法后,您可以从工作副本中删除该文件。svn现在不是内容,而是抱怨本地文件丢失,并且存在冲突的更新,最终希望看到文件被删除。干得好svn。
无论出于何种原因,如果svn resolve
不能工作,您可以执行以下操作:
初始情况:本地文件丢失,更新冲突。
$ svn st
! + C foo
> local edit, incoming delete upon update
! + C bar
> local edit, incoming delete upon update
重新创建冲突的文件:
$ touch foo bar
如果冲突是关于目录的,那么用mkdir
替换touch
。
新情况:要添加到存储库的本地文件(对,svn,无论您说什么),更新仍然冲突。
$ svn st
A + C foo
> local edit, incoming delete upon update
A + C bar
> local edit, incoming delete upon update
将文件恢复到svn喜欢的状态(即删除):
$ svn revert foo bar
新情况:本地文件对svn未知,更新不再冲突。
$ svn st
? foo
? bar
现在我们可以删除文件了:
$ rm foo bar
如果冲突是关于目录的,那么用rm -r
替换rm
。
svn不再抱怨:
$ svn st
好了。
发布于 2010-12-01 04:43:26
尝试使用以下命令解决冲突
svn resolve --accept=working PATH
发布于 2011-04-14 07:12:14
我也收到了同样的问题,我发现
$ svn revert foo bar
解决了这个问题。
svn resolve对我不起作用:
$ svn st
! + C foo
> local edit, incoming delete upon update
! + C bar
> local edit, incoming delete upon update
$ svn resolve --accept working
svn: Try 'svn help' for more info
svn: Not enough arguments provided
$ svn resolve --accept working .
$ svn st
! + C foo
> local edit, incoming delete upon update
! + C bar
> local edit, incoming delete upon update
$ svn resolve --accept working foo
Resolved conflicted state of 'foo'
$ svn st
! + foo
! + C bar
> local edit, incoming delete upon update
https://stackoverflow.com/questions/4317973
复制相似问题