日常文件的良好版本控制系统

时间:2009-09-21 06:22:09

标签: svn version-control

我想开始在版本控制下放置我的所有非代码个人文件(即word文档,excel电子表格,除媒体之外的所有内容等)。我想要这样做的主要原因是,在我将文件签入存储库之前,我可以扫描更改并进行一些控制。 TortoiseSVN非常适合这种情况,但是我不愿意使用所有内部svn文件夹来污染我的文件系统。有没有人这样做,并有任何建议如何将这些私人svn文件夹本地化到一个地方,或使用替代系统? SourceGear Vault看起来很棒,因为它在后端使用SQL Server,但它没有文件浏览器前端。

感谢您的任何想法。

5 个答案:

答案 0 :(得分:1)

我在unix机器上使用subversion做了一段时间 - 在版本控制下保留了一堆我的主目录的内容。当然,在unix上,.svn /是不可见的。

如果您想尝试一下,请继续使用.svn /目录污染您的内容。如果你认为这是一个坏主意,你可以很容易地将它们全部核对。我敢打赌,如果你尝试一下,你会在你知道之前训练自己忽略.svn目录。

另一个选择是使用dropbox之类的在线服务。您可以免费获得高达2GB的备份和版本控制(以及能够与他人共享内容)。当然,你将填补2场演出并最终不得不花钱 - 但如果你没有玩过它,那么值得一试。版本跟踪(通过Web界面)和共享/同步实际上非常酷。我用它来管理与远程同事共享的项目文档。

答案 1 :(得分:1)

大多数源代码控制系统都不能很好地处理二进制文件。此外,他们的工作流程(恕我直言)对于一般办公室类型的工作不能很好地工作。相反,值得看一下不同的disk snapshot解决方案。这个想法是他们在不同时期制作磁盘的“原子快照”,并且可以在不同时间保持它们。它可能每小时拍摄一次快照,但只保留最近5个小时快照,最后4个每日快照,2个每周快照和一些每月快照。对于使用通用文档和应用程序的人来说,这似乎更符合工作流程。

答案 2 :(得分:1)

如果您选择此解决方案,请考虑:

1 /您可以随时'svn export'使用您的存储库以获取没有任何.svn的树

2 /如果使用外部比较工具(如WinMerge)扫描树,可以教它完全忽略.svn目录。

所以你可以:

  • 在您的“.svn - 免费”树上工作,
  • 使用WinMerge检查任何演进并将新版本的文件复制到“.svn-filled”树(您的SVN工作区)
  • 通过TortoiseSVN登记

答案 3 :(得分:1)

你见过svk吗?它在Subversion之上提供了一个抽象层,并将所有Subversion元数据存储在本地磁盘的中心位置,因此每个目录中不再有.svn个文件。您将提交回本地svk存储库,然后将更改镜像回主Subversion存储库。您可以选择合并提交(例如,在本地进行大量小提交,但只返回Subversion)或立即镜像。这也意味着您在移动时可以访问元数据而没有连接到主存储库,因此您可以搜索以前的修订版等。

答案 4 :(得分:0)

我将Git用于我的代码和个人文件,并发现它的效果非常好。需要做一些工作来设置东西,我使用cygwin但我听说msysgit更容易。没有凌乱的.svn文件夹,快速主题分支用于轻松合并的实验,我使用Github将备份推送到每个晚上。