为什么删除不是 Subversion 的基本功能?

2024-02-06

几年来,我一直在等待 Subversion 提供“永久删除”(消除)功能。我犹豫是否要过渡到 Subversion(来自 Visual SourceSafe :p),因为我认为这是一个基本功能,否则我会期望存储库会不可阻挡地增长。然而,由于某种原因,该功能被一再推迟。所以我开始想知道是否有其他一些功能或解决方法可以使删除功能变得可有可无。

当你想要收缩SVN中央存储库时你会怎么做?

实施例1: I 签入大型第三方库 https://stackoverflow.com/questions/49196/storing-third-party-libraries-in-source-control,几周后我意识到它不适合我的需求。我不希望永远存储和备份大量数据。

实施例2:我的存储库中有10个大型第三方库的10个版本,但我只使用最新版本。

实施例3:我不小心签入了敏感信息(按照建议John https://stackoverflow.com/users/197229/john).

实施例4:我不小心签入了一些本来不应该放入存储库的大文件。


有相当多的讨论svn obliterate在问题票上Apache Subversion 站点 http://subversion.tigris.org/issues/show_bug.cgi?id=516,其中大部分在 2008 年左右结束。人们似乎普遍认为这是一种很好的能力,尽管它的使用应该很少。

想要它有两个主要原因。

首先,检查机密信息可能是一个问题。将其保留在那里、删除并不一定是一种选择,具体取决于存储库的机密性和暴露程度。

其次,签入大量不应该签入的内容会大大增加存储库的大小。如今,磁盘空间通常很便宜,但它并不是无限的,而且文件空间还有其他方面的重要性。如果需要通过网络连接发送存储库,则需要额外的时间,这可能很重要,也可能不重要。能够刻录包含整个存储库的 CD-ROM 或 DVD-ROM 确实具有优势。

因此,这是一项有用的功能,目前通过转储、过滤和重新加载存储库来完成。根据我所看到的报告,这很容易出错,速度可能很慢,并且需要关闭存储库。

显然,对于 Subversion 团队来说,这并不是一个高度优先的功能,因为多年来它所需要的是有人来完成设计和实现它的工作。毕竟,这种情况应该很少发生,并且有一个解决方法。然而,任何想要在 Subversion 上做大量工作的人都可以提供一个可能会被实现的补丁(如果质量足够好)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么删除不是 Subversion 的基本功能? 的相关文章

随机推荐

  • 在 JBoss 中使用多重登录模块

    我是身份验证和安全领域的新手 我正在尝试扩展我的应用程序的身份验证机制 该机制当前提供传统的用户名 密码身份验证 以提供用户通过 LDAP 服务器进行身份验证 在当前的实现中 应用程序使用j 安全检查来自服务器 API 的线程对用户进行身份
  • _CDSnapshot_[entityName]_ 的多个实例

    我看到数以千计的实例CD快照 entityName 使用 instruments 来跟踪未引用的分配时 这是什么 我认为它与 CoreData 相关 是的 这与核心数据有关 我相信这是可以预料的 请参阅我的回复 NSManagedObjec
  • 一个用户的 Python 模块导入错误,但另一个用户没有错误

    这有效 root host usr bin python26 script py Success 这会导致错误 user host usr bin python26 script py ImportError No module named
  • 从 pypi 进行 pip install 可以,但从 testpypi 失败(找不到需求)

    我正在尝试创建我的第一个 python 包 为了不搞砸整个交易 我一直在尝试将其上传到 testpypi 服务器 这似乎很顺利 sdist 创建并上传没有显示任何错误 但是 当我尝试将其安装到新的 virtualenv 时https tes
  • wxPython 最好的实时绘图小部件是什么?

    我想使用 Python 和 wxPython 显示一个包含一条或两条曲线 每秒最多 50 个样本的实时图表 该小部件应支持 Win32 和 Linux 平台 欢迎任何提示 编辑添加 我不需要以 50 fps 更新显示 但需要在两条曲线上显示
  • 文件夹未显示在存储桶存储中

    所以我的问题是安装时有一些文件没有显示在 gcsfuse 中 如果我使用 gsutils ls 我会在在线控制台中看到它们 另外 如果我在存储桶中手动创建文件夹 我就可以看到其中的文件 但我需要先创建它 有什么建议么 gs mybucket
  • 如何在 Spring Boot 中将 Cookie 设置为安全标志

    我正在研究 Spring Boot 完全不知道它是如何工作的 在验证登录时 JSESSIONID 被创建为 cookie 登录代码如下 protected void configure HttpSecurity http throws Ex
  • Linq to SQL Int16 在 SQL 命令中转换为 Int32

    通过方法参数 Int16 id 以及 Linq to SQL where 子句 where id HasValue m Id id 数据上下文中条件的结果命令文本是 从可视化工具 SELECT t0 Id t0 Name t0 IsActi
  • System.UnauthorizedAccessException:创建 COM 组件的实例失败,并出现错误 80070005 (C#)

    我在使用 C NET 命令行应用程序时遇到问题 其主要思想是使用 COM 对象从其他程序获取数据 当手动执行或作为 Node js 服务器内的子进程运行时 它工作正常 但是当整个项目作为 Windows 服务安装时 C 应用程序会响应以下错
  • 如何在单独的文件中创建命名查询

    我需要将所有命名查询保存在一个单独的文件中 例如 javax persistence NamedQueries NamedQuery name Employee findAll query SELECT e FROM Employee e
  • web.config 中与 targetFramework 相关的配置错误

    我在 Visual Studio 2015 中制作了一个 MVC 网站 它可以在我的本地主机上运行 但是当我发布我的网站并放入我的主机时 它不起作用 它给了我这个错误通知 应用程序中的服务器错误 配置错误 解析器错误消息 targetFra
  • FFmpeg 使用 URL 进行文件转换

    我需要将 MP4 转换为 AVI MP4 视频上传到 Windows Azure Blob 存储中 并且存储可公开访问 当我们编写 ffmpeg 命令行时我的问题 我可以提供 Blob 存储中视频的 URL吗 ffmpeg ihttps a
  • 用于重试同一请求的 HTTP 状态码

    是否有 HTTP 状态代码来指示客户端再次执行相同的请求 我面临着服务器在处理请求时必须 等待 锁消失的情况 但当锁消失时 请求可能会接近其超时限制 因此 一旦锁定清除 我想指示客户端再次执行相同的请求 我想出的最好的办法是使用 HTTP
  • Angular 将特定数据检索到 $scope 变量中不起作用

    我这里初始化 scope statuses 然后 如果我只是将 http get 中的数据设置为 scope 变量 那么 有效 但我需要对其进行更多过滤 scope statuses result data Devices console
  • 如何在c99中使用ftruncate而不发出警告

    我想在我的代码中使用 ftruncate 函数 我必须使用选项 std c99 进行编译 我收到警告 In function test warning implicit declaration of function ftruncate W
  • 将 gtfs 实时数据流式传输为人类可读的格式

    我正在尝试使用 Java 下载可读的 gtfs 实时数据 协议缓冲区格式 以便我可以在文本文件中查看它 我尝试了几种方法 方法 1 URL url new URL uri byte buffer new byte 4096 InputStr
  • JavaScript 评估问题

    var x 5 function f y return x y 2 function g h var x 7 return h x var x 10 z g f 我正在解决课堂上教科书上的一些问题 为下一次考试做准备 但无法弄清楚上述内容如
  • Pandas 对条形图进行分组和重采样:

    我有一个数据框 以高时间频率 为了计算平均浓度 我必须对每日和每月数据应用质量控制过滤器 我的方法是首先应用过滤器并每年重新采样 然后按位置和年份进行分组 另外 在所有位置 在标题为 位置 的列中 中 我只需选择几行 因此 我对原始数据框进
  • SMIL(同步多媒体集成语言)的未来?

    SMIL 同步多媒体集成语言 最后一次更新是在2008年 有谁知道在同步多媒体文件时是否有更好的协议可以遵循 SMIL 没有天然的竞争对手 因此任何其他解决方案都将依赖于脚本 它支持 ePub 阅读器 例如Azardi http azard
  • 为什么删除不是 Subversion 的基本功能?

    几年来 我一直在等待 Subversion 提供 永久删除 消除 功能 我犹豫是否要过渡到 Subversion 来自 Visual SourceSafe p 因为我认为这是一个基本功能 否则我会期望存储库会不可阻挡地增长 然而 由于某种原