如何从导出的副本更新现有SVN存储库?

时间:2010-05-20 10:07:15

标签: svn tortoisesvn

一天下午晚些时候,我导出了我的项目存储库并将我的工作带回家。

我已经为导出的项目添加了许多更改,现在,回到工作区后,我想用我现在拥有的项目更新存储库。

为了使问题复杂化,我在主干和分支中对项目进行了更新 - 我想更新存储库以反映所有这些更改。

我是SVN的新手并且一直依赖TortoiseSVN,但我现在有点迷失。

我是否最好删除存储库并从我现在拥有的副本/分支重新创建它?

3 个答案:

答案 0 :(得分:4)

免责声明:我不完全确定这是否是最佳解决方案以及是否存在缺点。我看不到任何内容,因为重要的.svn目录没有被触及,但我不是SVN Guru。我建议你做备份(好吧,无论如何应该),看看其他的回答者还有什么要说的。

如果您使用的是Windows,我认为应该可以执行以下操作:

  • 查看工作副本(例如,进入/myproject
  • 从USB记忆棒中取出/myproject文件夹,然后将其粘贴+粘贴到本地/myproject结帐
  • Windows资源管理器现在应该集成这两个文件夹,保留不可见(和基本的).svn文件,但是从导出中添加任何更改和新文件。

  • 您现在应该可以在Tortoise中进行“检查修改”。更改的文件应该变为更改;应该能够添加新的文件和目录。此方法涵盖的唯一内容是您在导出中删除的文件和目录。

你必须为我认为的每个分支单独做这个 - 或者至少我会这样做只是为了确保。但这可能是一个小小的不便。

答案 1 :(得分:2)

简短的回答:你做不到。您不应该“导出”您的存储库,而是“检查出来”。

也许最简单的方法(取决于更改的大小)是检查另一个目录中的存储库,并手动复制您的更改。然后提交所有更改。

答案 2 :(得分:0)

不确定什么是最好的,但我和你的情况类似,删除和重新创建是最适合我的方式。