从TFS数据库“销毁”Git存储库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从TFS数据库“销毁”Git存储库相关的知识,希望对你有一定的参考价值。

我试图找到tf destroyfor和Git存储库的等效动作。也就是说,永久删除Git存储库并恢复数据库中的空间。运行TFS 2017 U3。

我们有许多Git存储库,其中要么添加错误,要么已经过时并且可以丢弃。仅仅"deleting"存储库似乎没有恢复数据库中的空间。我知道TFS清理在5天或7天的周期内运行以恢复空间。

看来TFS在内部跟踪已删除的存储库 - dbo.tbl_GitDeletedRepository,它也表明它们可以被恢复(没有选择这样做)。

注意:我知道如果只剩下一个repo,你就无法删除。

或者,是否有推荐的方法来清除存储库的全部内容,压缩存储库(gc?),将其推送到TFS,从而恢复数据库中的空间?

答案

TFS集合数据库中存储了许多不同类型的文件,包括Team Foundation版本控制文件,Git文件,工作项附件,测试用例附件,构建输出等。并非所有文件都支持清理。另请注意,文件内容通常不会在删除后立即清除,而是由定期运行的后台作业(通常每天一次)清除。

对于Git,您可以尝试运行以下命令,然后删除存储库。 (如果不再需要项目,删除整个团队项目)

git reflog expire --all --expire=now
git gc --prune=now --aggressive

有关详细信息,请参阅此主题:Reduce git repository size

您还可以参考以下文章来清理GIT存储库:

以上是关于从TFS数据库“销毁”Git存储库的主要内容,如果未能解决你的问题,请参考以下文章

带有单独存储库的 git-tf

如何在 TFS 中仅删除一个 Git 存储库?

当 TFS 为构建克隆 git 存储库时出现 AppDomainUnloadedException

Git删除TFS git存储库中的远程分支

git-tfs clone 创建空文件夹

git-tfs 克隆失败,错误代码 128