gpt4 book ai didi

git - 在 git svn clone 期间过滤删除?

转载 作者:太空狗 更新时间:2023-10-29 13:15:36 26 4
gpt4 key购买 nike

问题:遗留 svn 存储库有一个从生产服务器上的用户配置同步的目录。

有效同步:

  • 删除所有文件
  • promise
  • 复制所有文件
  • promise

是否有可能在这个 repo 的 git svn 克隆期间过滤掉所有文件删除?

还有后续的 git svn 抓取吗?

我不一定要过滤整个提交,只过滤删除文件的部分。

这意味着将后续添加文件更改为修改文件。

最佳答案

首先,如果您想更好地控制 repo 转换,您可能需要考虑使用 Reposurgeon而不是 git-svn


由于 Git 的工作方式,这些不良行为在 SVN 中的影响没有您想象的那么严重。

首先,Git 本身没有“文件历史”的概念。没有像 SVN 或其他 VCS 系统中那样的“文件修改”之类的东西。 Git 只记住一棵文件树。然后是另一棵文件树。等等

如果您将 HEAD 与 HEAD^^ 进行比较(其中 HEAD^ 是中间的“已删除”提交),您将得到的结果与您设法将“已删除”修订版完全排除在外时所获得的结果没有什么不同。

此外,存储需求不会太大 - Git 存储整个对象并在制作包时比较它们的相似性,这与使用增量压缩的 SVN 不同(因此取决于文件历史)。与缺少空树修订版相比,树 A + 空树 + 树 B(由大部分相同的文件组成)将占用非常小的额外空间。

关于git - 在 git svn clone 期间过滤删除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31749455/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com