0

我正在使用 Visual Studio 进行开发。我制作了主干的两个功能分支,分支 P 和分支 E。分支 EI 在其自己的目录中添加了一个新项目。在切换到分支 P 之前,我必须删除此目录,否则会造成混乱。如果我记得,这很好用。但是,如果其他人添加了一个我错过的新项目或者我忘记了一个目录,那么我又会变得一团糟。

我在全局忽略中设置了 *.sou、*.user bin 和 obj。

现在,如果我在从 E 切换到 P 时忘记从分支 E 中删除分支 P 中不存在的任何目录,那么混乱就开始了。版本化文件在工作副本中被删除,但目录仍然存在,因为 subversion 不知道如何处理它。没关系。然后,当我将工作副本从 P 切换到 EI 时,会出现“本地未版本化,切换时传入添加”的冲突。

处理这个问题的最佳方法是什么?

已解决的命令说要使用解决命令。解决命令说我对树冲突的唯一选择是使用“接受工作”,这是错误的,但我看到的唯一选择。因此,一旦我发布我的新库被标记为删除,这不是我需要的。

因此,我需要将新库检出到不受颠覆控制的单独目录中。将更改提交到分支 E 以解决冲突,这也将删除新库。然后我必须将刚刚完成的结帐中的文件复制到我的工作副本中,然后添加新目录以获取我所在的位置。更不用说它必须做的历史了。

我一定是在做一些艰难的事情,但我在书中找不到任何可以指导我的东西,颠覆邮件列表也无济于事。有没有人找到更好的解决方案?

4

1 回答 1

0

我终于收到了来自颠覆邮件列表的答复。其实我收到了两个。

1)我可以为每个分支创建不同的工作目录。这可能适用于某些事情,但我也必须复制环境。也许我可以重定向事情以尽量减少影响,但我并不是在寻找一个时间密集的解决方案。

2) 我可以使用 --force 选项。这可以治愈它。我会找出它是否会导致任何其他问题,但现在我可以继续前进。

于 2013-08-26T19:19:51.090 回答