You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

新建React Native应用推送至GitHub/GitLab时出现broken pipe错误如何解决

错误原因
  • 核心原因:react-native init生成的初始项目如果未正确配置.gitignore,会将node_modules目录纳入提交范围,单次推送体积远超Git服务端SSH连接默认的单次传输上限,触发连接中断抛出broken pipe错误。
  • 次要原因:本地Git配置的SSH缓冲区太小,无法适配React Native初始项目的正常提交体积,即便已经配置了.gitignore,初始模板文件+依赖声明文件的整体体积也远大于普通小型项目,也可能触发传输中断。
  • 分支匹配问题:新创建的远程空仓库默认分支多为main,如果本地默认推送的是master分支,分支不匹配也可能在部分场景下触发连接异常中断。
解决方案

按优先级执行以下操作即可解决问题:

1. 配置标准.gitignore文件

在项目根目录创建/更新.gitignore文件,添加React Native官方标准排除规则,确保不会提交不必要的大体积文件:

node_modules/
npm-debug.log
yarn-error.log
ios/build/
android/build/
android/app/build/
.DS_Store
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
xcuserdata
*.xccheckout
*.moved-aside
DerivedData
*.hmap
*.ipa
*.xcuserstate
android/.idea/
.idea/

配置完成后执行以下命令重置本地提交:

git rm -r --cached .
git add .
git commit -m "chore: 初始化项目提交"

2. 调大Git SSH传输缓冲区

执行全局配置命令,将SSH单次传输缓冲区上限调整为500M,适配大体积项目的推送需求:

git config --global ssh.postBuffer 524288000

3. 匹配本地与远程分支名

如果远程仓库默认分支为main,执行以下命令修改本地分支名后推送:

git branch -M main
git push -u origin main

如果需要推送至master分支,可在远程仓库设置中将master调整为默认分支后再执行推送。

内容的提问来源于stack exchange,提问作者Prince Mittal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.16 12:36:07