相关疑难解决方法(0)

SVN如何解决*文件夹*上的"本地添加,传入添加更新"?

这是我的场景:

假设我们有一个SVN repo,其中包含以下内容:myfolder myfolder\file.txt

现在我创建了两个这个repo,co1和co2的签出.

在co1中我们修改file.txt.在二氧化碳我们:

  • svn删除myfolder
  • svn提交
  • 创建一个名为myfolder的新文件夹
  • svn添加myfolder
  • svn提交

现在,如果我在co1中尝试更新,我会遇到树冲突:

A  +  C myfolder >   local edit, incoming delete upon update
M  +    myfolder\file.txt
Run Code Online (Sandbox Code Playgroud)

我想保留myfolder和修改后的文件,所以我解决了树冲突:

svn resolve --accept working folder
Run Code Online (Sandbox Code Playgroud)

现在,如果我尝试提交,我会得到"svn:Directory'/ myfolder'已过期".如果我尝试使用svn up myfolder解决此问题,我会再次遇到树冲突:

A  +  C folder >   local add, incoming add upon update
M  +    myfolder\file.txt
Run Code Online (Sandbox Code Playgroud)

好的,我们再试一次svn resolve --accept工作文件夹.但是我们仍然无法提交,我们得到的结果是"svn:Directory'/ myfolder'已经过时了",如果我们将myfolder设置为svn,我们会回到最后一次树冲突.

解决此类冲突的正确程序是什么(当我们希望保留myfolder及其更改时)?

编辑:Windows cmd行脚本来说明:

rmdir /S /Q C:\svntest 
mkdir C:\svntest

cd C:\svntest

svnadmin create repo

svn co file:///c:/svntest/repo co1
svn co file:///c:/svntest/repo co2

cd co1
mkdir folder …
Run Code Online (Sandbox Code Playgroud)

svn tree-conflict

49
推荐指数
3
解决办法
8万
查看次数

标签 统计

svn ×1

tree-conflict ×1