我有一个正在处理的项目,我正在使用 TortoiseSVN 进行版本控制(最新)。我是唯一一个参与过这个项目的人。
前段时间,我在那个项目中移动文件和文件夹。版本历史告诉我,一个提交负责移动和删除一些文件。像这样:
PATH ACTION COPY FROM FOLDER
=====================================================
/some/folder REPLACING /some/other/folder
/some/folder/file1 DELETED
/some/folder/file2 DELETED
现在这是我的一个错误。我从来没有打算删除这两个文件。这只是一个复制操作。但是不用担心,对吧?毕竟是源代码控制。
然而现在那里有奇怪的地方。当我查看 时/some/folder
,我看到file1
andfile2
仍然存在。不仅如此,它们仍被标记为处于修订控制之下。Tortoise 完全相信它们是我本地工作副本的一部分。尝试查看文件的历史记录也给出了一个错误的 URL,直到我对工作副本执行“清理”。
现在我可以看到文件的历史记录,但最后一次提交仍然表明它们已被删除,并且在另一台计算机上执行更新不会将文件放在那里。此外,无法提交对这些文件的更改。
怎么回事?o_o
更新:我想知道这是如何以及为什么会这样。这可能是我自己的错,因为我做了很多文件重命名,包括删除一个文件夹并在其位置复制另一个文件夹,所有这些都在同一个提交中。但它仍然不应该造成这样的混乱。所以... WAT?
至于修复它,我想我可以自己做。我可以下载另一个工作副本并通过它添加文件,故事结束。但在这种情况下,我想了解是什么导致了它,如何重现它,以及是否应该向 SVN 团队提交错误。:P