无法使用Tortoise提交文件夹

问题描述:

在涉及创建新项目和在它们之间移动文件的大重构之后,我遇到了一个很大的问题,即提交了一个已移动的文件夹(及其内容)。无法使用Tortoise提交文件夹

该文件夹当前显示为已修改(即带有感叹号的红色重叠)。当我尝试提交它时,我被告知需要先更新工作副本。

当我尝试更新它时,我得到'目标路径'[位置]'不存在'。令人担忧的是,在移动它们之前,这是文件夹存在的结构中的位置。它似乎试图从错误的位置更新它们。

所以,我卡在这'不能提交,无法更新'循环,我不知道如何摆脱它。

我认为必须发生的事情是我已经将其中包含.svn文件夹的文件夹复制到新位置。在.svn文件夹中的subversion东西仍然认为在与存储库交谈时需要与旧位置连接。

任何人都可以帮忙吗?

感谢

大卫

在这种情况下,我通过删除的.svn目录解决了这个问题夹。这意味着他们只是像Tortoise的新文件夹一样出现,并且我能够提交它们。

有时迫使更新工作

svn up --force . 

在命令行

很高兴你能解决这个问题。我猜你必须在删除“.svn”文件夹后再次“svn添加”文件夹。这有吹拂这些文件历史的不幸的副作用。

未来,在使用Tortoise移动东西时,您应该记住它的most forgotten feature:右键单击并拖动。你应该习惯于在用Tortoise移动版本化的文件和文件夹时使用右键单击拖动,因为右键可以让你“svn move”,“svn copy”或“svn add”文件/文件夹在拖。与Tortoise(以及所有svn客户端)合作的关键是要记住,标准的文件系统操作会混淆svn。您对文件所做的任何操作都必须通过相应的“svn”操作完成,以便svn知道跟踪更改并保留文件/文件夹的历史记录。

如果你在IDE中工作,我会建议使用IDE的svn插件,因为他们倾向于很好地为你处理这些问题。在MS的土地上有VisualSVN,而在java土地上有Subversive

+0

这是非常好的建议。谢谢。 – David 2010-07-22 08:01:26