丢弃旧历史的版本控制

时间:2011-08-19 19:55:22

标签: git svn version-control history

我正在寻找一个版本控制系统来保护我免受我最近 (不超过一周)的错误,并丢弃其余的错误。是否有一种使这种自动清理非常容易的方法?

为了记录,我正在使用SVN,但我不是问如何让SVN执行此操作,而是询问是否存在使简单的VCS。

2 个答案:

答案 0 :(得分:2)

您可以使用Subversion执行此操作。在本周末,对某个位置执行SVNADMIN dump以保留您的仓库,然后从转储文件的HEAD执行SVNDUMPFILTER以创建替换现有仓库的新仓库。

这是一个屏幕截图,用以说明我的观点。

enter image description here

根据需要每周重复

最好的部分是你可以回到这些旧的回购并恢复它们(并且你会)你意识到你需要一周以上的东西

答案 1 :(得分:2)

不要质疑你这样做的理由:

您必须能够通过git以多种方式执行此操作,以下是其中之一:

git fast-export master --since "1 week ago" | (cd ../newrepo.git && git init . && git fast-import && git checkout)

您从上周导出提交,导入到新的仓库。如果你愿意的话,你可以在同一个仓库中做到这一点:

git fast-export master --since "1 week ago" | (rm -rf .git && git init . && git fast-import && git checkout)

我喜欢您在Git中如何指定1 week agoyesterdaynow等(http://www.kernel.org/pub/software/scm/git/docs/gitrevisions.html)来引用修订版。它确实很容易找到你想要的修订版。