svn - 非版本化 SVN 目录?

标签 svn version-control

我们遇到的问题是客户向我们提供了要包含在版本中的内容,其中包括大量视频文件。他们的内容通常保存在 SVN 中,但由于他们无权访问它,因此对这些大型二进制文件进行版本控制似乎不太适合 SVN。我们的测试不需要这些文件(我们只需测试是否可以启动视频(如果找到)),并且我们不负责检查/测试客户提供的内容。

所以我想知道是否有可能有一个没有版本控制的 SVN 目录,而只是一个常规目录,在更新/ checkout 时仍然可以拉取? 或者也许 SVN 有办法从非 SVN 源提取文件,有点像 svn:externals 但不查看另一个存储库?

是否有一个 SVN 解决方案来解决这个问题,或者如果我们想避免对文件进行版本控制,我们是否应该简单地将它们放在另一个存储中并配置构建/部署脚本来单独拉取它们?

最佳答案

可惜,subversion 存储了提交给它的所有版本 - 没有设置标志来告诉它只保留最后一个版本。也许有一天,抹杀实现后,但不要屏住呼吸等待:)

基本上,没有 SVN 解决方案来解决这个问题 - 因此您需要查看文档管理服务器,或者只是一个单独的文件存储。

有一个选项可能适合您,如果您使用 TortoiseSvn,则可以使用它的 client-side hooks自动将视频文件从文件存储拉取到本地系统。

全颠覆解决方案的替代方案是像平常一样将视频文件存储在其中,但然后定期转储/过滤/加载存储库以清除旧版本。如果视频文件非常大,这可能需要一些时间,所以我不确定是否推荐它,但如果您将它们存储在自己的存储库中,您只需获取最新版本,删除整个存储库,然后重新导入您刚刚需要使用 1 版本重新初始化存储库的文件。节省空间,并且可以编写脚本,但与只是告诉每个人“将视频文件从“\server\videos”中删除”相比,可能不值得这么麻烦。

关于svn - 非版本化 SVN 目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4204400/

相关文章:

java - Subclipse 未将新文件添加到版本控制中

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

svn - 将分支合并到主干的颠覆最佳实践,其中分支中的文件结构已被修改

version-control - Sourcetree - 撤消未推送的提交

vba - 从多个 Excel 文档导出 VBA 代码以放入版本控制

svn - 控制过时的版本控制

linux - Subversion sudo svn update 更改文件所有权和 rwx

version-control - 防止 brew cleanup 删除特定的旧版本软件

svn - 维护一组不提交给 SCM 的小改动

c++ - OpenTissue boost 绑定(bind)问题