2012-08-07 94 views
1

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

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

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

现在是否至少有一个选项来检索添加到svn的文件(“添加”选项),而不是使用“Commit”提交给svn? Regards

回答

0

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

0

尝试“更新到修订”,但由于您的文件没有被提交,所以最有可能在最好的情况下恢复您的目录结构。
通常“使用他们解决”选项相当于说“我搞砸了,他们是对的” - >我拥有的任何东西都是错的,他们拥有的东西是正确的 - >覆盖我的副本。

0

你所要求的与SVN的工作流程相差无几。事物在提交之前不会被存储在存储库中,因此不“安全”。你应该经常提交。

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

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