React Native多分支开发咨询:搭建安卓、iOS及共享代码分支
用Git分支管理React Native跨平台专属代码的正确方案
分支结构规划
先明确三个分支的定位:
shared:核心共享分支,存放Android和iOS通用的React Native代码、组件、业务逻辑,所有跨平台通用的开发都在这个分支进行。android-only:安卓专属分支,基于shared创建,仅添加安卓平台独有的依赖(比如仅支持安卓的第三方库)、原生配置、平台专属组件/逻辑。ios-only:iOS专属分支,同样基于shared创建,仅添加iOS平台独有的依赖、原生配置、平台专属组件/逻辑。
核心操作步骤
创建初始分支
先从现有代码初始化shared分支:git checkout -b shared git push -u origin shared再基于
shared创建两个专属分支:# 创建安卓专属分支 git checkout shared git checkout -b android-only git push -u origin android-only # 创建iOS专属分支 git checkout shared git checkout -b ios-only git push -u origin ios-only同步通用代码到专属分支
当你在shared分支完成跨平台通用代码的开发(比如新增通用组件、优化业务逻辑),需要把更新同步到两个专属分支:- 新手优先用合并(Merge),冲突处理更直观:
# 同步到安卓分支 git checkout android-only git merge shared # 处理可能出现的冲突,提交后推送 git add . git commit -m "同步shared分支的通用代码更新" git push # 同步到iOS分支同理 git checkout ios-only git merge shared # 处理冲突、提交、推送 - 追求整洁分支历史可以用变基(Rebase),但新手建议先熟练Merge再尝试:
git checkout android-only git rebase shared # 处理冲突后继续变基:git rebase --continue git push -f # 变基后需要强制推送,仅在自己单独维护的分支使用
- 新手优先用合并(Merge),冲突处理更直观:
开发平台专属代码
在android-only分支直接添加安卓专属的第三方库(比如修改build.gradle引入依赖)、安卓原生模块、仅安卓可用的RN组件;同理在ios-only分支处理iOS专属内容。注意:不要在专属分支修改shared分支已有的通用代码,能最大程度减少合并冲突。发布/打包
打包安卓时切换到android-only分支执行打包命令,打包iOS时切换到ios-only分支执行对应命令即可。
避坑提醒
- 每次在专属分支开发前,先同步
shared的最新代码,避免后续合并出现大量冲突。 - 如果专属功能需要调整通用代码,先在
shared分支修改,再同步到专属分支,不要直接在专属分支改动通用部分。 - 定期清理冗余分支,保持仓库结构整洁。
内容的提问来源于stack exchange,提问作者farzam 2206
相关产品推荐
相关产品推荐

