Git版本控制Bitbucket使用咨询:上传大体积Visual Studio方案报413错误
Bitbucket推送1GB Visual Studio解决方案返回413错误解决方案
错误根因
413请求体过大错误触发的核心原因是推送内容超出Bitbucket平台的默认限制:普通Git单次推送总大小阈值为2GB,单个普通文件最大允许100MB。你遇到该问题,大概率是没有过滤Visual Studio解决方案中大量不需要纳入版本控制的冗余文件,这部分内容通常会占解决方案总体积的70%以上。
操作步骤
- 首先在仓库根目录添加
.gitignore文件,过滤VS、.NET、Node.js生态的冗余文件,常用规则包括:# VS相关 .vs/ bin/ obj/ *.suo *.user *.userosscache *.sln.docstates packages/ *.[Pp]ublish.xml # Node.js相关 node_modules/ .env *.log - 如果你已经执行过
git add .暂存了冗余文件,先执行git rm -r --cached .清空暂存区,再重新执行git add .让.gitignore规则生效,自动排除冗余文件。 - 执行
git count-objects -vH查看即将提交的内容总大小,正常纯源码的VS解决方案清理后体积一般在几十到几百MB,远低于平台推送阈值。 - 如果确实存在必须纳入版本控制的大文件(比如不可重新生成的静态资源、专有第三方依赖包),使用Git LFS管理:
- 本地安装Git LFS后执行
git lfs install启用功能 - 执行
git lfs track "*.后缀名"指定要托管的大文件类型,比如git lfs track "*.dll" - 将生成的
.gitattributes文件提交到仓库,后续大文件会走LFS存储通道,不会占用普通推送配额。
- 本地安装Git LFS后执行
- 若清理后单次推送仍然超限,可以拆分提交内容,分多批次推送。
补充说明
版本控制需要收录的是需要追踪变更的源码、配置文件等可编辑内容,编译生成的二进制产物、包管理器拉取的第三方依赖等可以通过标准流程重新生成的文件,本身就不需要纳入版本库,提交这类内容反而会降低仓库操作效率,占用不必要的存储空间。
内容的提问来源于stack exchange,提问作者Lifesigns
相关产品推荐
相关产品推荐

