0

在我们的小班组中,我们遇到了颠覆性的东西(我们仍在学习如何正确使用它)。基本上,最后的整个修订版都是假的。

我想做的是使下一个修订版与我的本地计算机上的内容完全相同-我计算机上的文件在服务器上,不在我本地计算机上的文件不在此修订。

我要做的是重置存储库并从头开始,但我不想丢失我们最后的修订。

使用 TortiseSVN 和 Google 代码,我怎样才能完成这项任务?

4

2 回答 2

2

我不确定我明白你想要什么。您可以在 Tortoise 日志窗口中使用 'revert changes from this revision' 来撤消来自修订的更改。这将撤消工作副本中的更改,您必须提交它们。

如果您的工作副本包含您想要保存的更改,那么您有更多的选择。

  1. 无论如何都提交您的更改,并且仅从有问题的修订中进行更改(以防您当前的更改与有问题的修订重叠太多)
  2. 从您当前的更改创建补丁并保存它,然后撤消您的本地更改,恢复有问题的修订,提交,应用补丁,提交(这相当于以前的方法,您只需自己做所有事情。
  3. 签出新主干并使用它来恢复有问题的修订,提交,使用本地更改更新主干,并希望一切更新而不会发生冲突
  4. 如果您可以访问服务器上的存储库,则可以创建备份,然后过滤出有问题的修订并恢复转储(仅在必须时才这样做)
于 2010-11-09T11:13:34.720 回答
0

首先,除了删除存储库后备存储之外,您不能“重置存储库”,如果是 Google 代码,您无论如何都无法执行此操作。即使您从存储库中删除了所有文件和目录,历史记录和旧版本仍然存在。
其次,只需将存储库中的 HEAD 检出到单独的目录中,并将每个数据文件替换为您的本地版本。注意不要触摸 .svn 目录。

顺便说一句:这是两种不同的解决方案:一种是删除所有内容并从头开始,而第二种是半手动执行此操作。

于 2010-11-09T11:12:53.983 回答