1

我已将文件(例如 SomeFile.cs)添加到特定文件夹。我没有提交,因为我想在实现功能后立即提交。一个 svn update 在这方面工作得很好,直到有人更改了文件夹名称并更改了它下面的文件的名称。

现在第二天,当我执行 svn checkout 时,导致树级别冲突,所以我将新添加的文件复制到这个“新”位置并作为“使用他们的解决”。

该解决方案删除了​​我所有的本地文件并替换为新的文件夹和文件。我在整个计算机(包括回收站)中找不到我的本地文件(在我的工作副本中)。

现在是否至少有一个选项可以检索已添加(“添加”选项)到 svn 并且未使用“提交”提交到 svn 的文件?问候

4

3 回答 3

0

AFAIK,只有提交给 svn 的文件才能恢复。但是,如果您将冲突与他们的冲突合并,那么它将在本地覆盖更改。

于 2012-08-07T10:37:19.350 回答
0

您所要求的几乎与 SVN 的工作流程背道而驰。事物在提交之前不会存储在存储库中,因此不是“安全的”。你应该经常提交。

如果您正在努力工作但担心其他人的树更改会妨碍您,请考虑制作一个分支。 http://svnbook.red-bean.com/en/1.7/svn.branchmerge.html

但是,SVN 永远不应覆盖本地工作副本中已修改的文件。如果您执行 svn 更新,并且有人添加/更改了某些内容,您将得到一个“冲突”,您必须手动解决。您手动解决了这些冲突,并意外覆盖了您的工作。这就是为什么你应该经常提交。您提交的任何内容都可以恢复。

于 2012-09-21T16:35:25.973 回答
0

尝试“更新到修订版”,但由于您的文件未提交,因此在最佳情况下很可能会恢复您的目录结构。
通常,“使用他们的解决方案”选项相当于说“我搞砸了,他们是对的”-> 我所拥有的都是错误的,而他们所拥有的是正确的 -> 覆盖我的副本。

于 2012-08-07T10:55:51.557 回答