svn - Subversion 在哪里物理存储它的数据库?

标签 svn tortoisesvn

在阅读了许多关于 SVN 的介绍、入门指南和文档后,我仍然无法弄清楚我的版本控制数据存储在哪里。我是说 body 上的。我已经 checkin 了超过 EDIT [1/2 GB] 的代码,并且存储库只有几 MB 大。这对我来说仍然是巫术。而且,作为一名程序员,我并不真正相信万智牌。

编辑:
一位贡献者表示并非所有代码都存储在 repo 中,这是真的吗?我的意思是,如果我删除本地工作副本,我仍然可以取回存储库的源代码...
如果是这样,我仍然无法理解如何在我的代码上发生这种压缩......

编辑 2:
当我将代码导入存储库时,我收到消息“已上传 50MB”,而实际的存储库要小得多。必须涉及压缩算法。

顺便说一句,阅读一些答案并看看有多少人确实相信万智牌,并在不真正了解幕后发生的事情的情况下使用 SVN,这很有趣……

最佳答案

根据 Mika 的要求,将此作为答案:

我很惊讶有多少人错误地回答了这个问题。 .svn 文件夹不是服务器存储其文件的地方(因为它是机器本地的 - 没有其他人能够查看该信息),而且,虽然 SVN 只存储差异(假设 FSFS),但它必须存储原件在某处。

当然,正如@csharptest.net 所说:“我猜,70% 是性能数据,另外 29.99% 是在 'obj' 和 'bin' 目录中。留下 10mb 的实际代码 checkin 。”所以你实际上并没有检查所有这些信息。其中大部分从未进入存储库。此外,SVN 使用了大量的压缩算法和各种技术,并且不一定将您的数据逐字节存储在存储库中。这可能就是您看到大小差异的原因。

如果您有兴趣阅读有关 SVN 工作原理的更多信息,请在此阅读 Stackoverflow answer .

希望有帮助!

关于svn - Subversion 在哪里物理存储它的数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4717227/

相关文章:

svn - 在多站点 Windows 环境中部署 Subversion (SVN) 的最佳方式

git - 更新远程分支的 git-svn 列表

svn - TortoiseSVN:为什么我不能将外部(项目)添加到我的工作副本的 ROOT 中?

svn - 如何创建新分支?

SVN:和 bash:如何判断是否有未提交的更改

svn - 工作副本的 Unversion 文件夹 - TortoiseSVN 1.7

svn - 如何修复 TortoiseSVN 中的虚假日期错误

svn - 如何将功能分支重新集成到 SVN 中的主干副本?

java - Eclipse IDE 中的 Spago BI 源代码

windows - 如何关闭二进制文件(.doc、.pdf 等)的 git 1.7.8 开销