项目历史记录大小推送错误该怎么办?

时间:2018-05-04 14:19:27

标签: git azure-devops git-push

我能够使用git-p4将Perforce软件仓库迁移到Git中。这个仓库有着悠久的历史,在Git上变成了+ 7GB:

  

MyProj.git \对象\包

我正在努力推进团队服务,但似乎有一个Push Size Limit

C:\SomeFolder\MyProj>git push -u origin --all
Counting objects: 41905, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (10604/10604), done.
Writing objects: 100% (41905/41905), 6.83 GiB | 8.34 MiB/s, done.
Total 41905 (delta 30933), reused 41902 (delta 30930)
error: remote unpack failed: error TF402462: This push was rejected because its size is greater than the 5120 MB limit for pushes in this repository. Learn more at https://aka.ms/gitlimit
To https://MyRepoURL/MyProj
 ! [remote rejected]   master -> master (TF402462: This push was rejected because its size is greater than the 5120 MB limit for pushes in this repository. Learn more at https://aka.ms/gitlimit)
error: failed to push some refs to 'https://MyRepo/MyProj'

如果删除文件以减小大小,则实际大小会变大(删除后会删除已删除的文件)。

这里有什么可能的解决方案?

1 个答案:

答案 0 :(得分:1)

正如您所链接的VSTS documentation中所述,如果回购邮件大于5GB,则必须使用"Import repository"功能。

进入您的VSTS帐户,创建一个仓库(没有Readme.md或其他任何内容),填写文件选项卡,然后在底部找到Import repo按钮。

如果您的仓库非常大,您可能需要在Azure中设置自己的TFS,在那里推送/导入您的仓库,然后再向VSTS迈出第二步。但对于7GB,这不是必需的。但是,当整个生产TFS迁移到VSTS时,情况会更多。