将GitHub仓库同步至AWS CodeCommit时遇UnrecognizedFormatException错误求助
解决AWS CodeCommit推送大仓库时"Too many reference update commands"错误
错误原因
大仓库包含的分支、标签等引用数量过多,超出了AWS CodeCommit单次推送允许的引用更新命令上限,导致推送中断。
解决方案
拆分推送任务,分开处理分支和标签
避免一次性推送所有引用,拆分成分支和标签两次推送:# 推送所有分支 git push origin 'refs/heads/*' # 推送所有标签 git push origin 'refs/tags/*'调整Git配置,优化推送参数
- 关闭sideband传输,避免大体积数据传输时断开:
git config --global sendpack.sideband false - 限制单次打包的对象数量,分批推送(可根据仓库大小调整数值):
git config --local push.packObjects 1000
- 关闭sideband传输,避免大体积数据传输时断开:
清理本地无用引用,减少推送量
- 清理本地已失效的远程引用:
git fetch --prune - 删除本地过时的标签(按需操作):
git tag -d <过时标签名称>
- 清理本地已失效的远程引用:
额外检查
确认IAM角色已具备codecommit:GitPush权限,且推送环境网络稳定,避免因网络波动导致推送中断。
内容的提问来源于stack exchange,提问作者Ikar Pohorský
相关产品推荐
相关产品推荐

