react-native-bottom-sheet开源贡献指南:从Issue到PR的完整流程

react-native-bottom-sheet开源贡献指南:从Issue到PR的完整流程

【免费下载链接】react-native-bottom-sheet A performant interactive bottom sheet with fully configurable options 🚀 【免费下载链接】react-native-bottom-sheet 项目地址: https://gitcode.com/gh_mirrors/re/react-native-bottom-sheet

作为一个高性能、可完全配置的交互式底部弹窗组件(Bottom Sheet),react-native-bottom-sheet 项目欢迎所有开发者参与贡献。本文将详细介绍从发现问题(Issue)到提交代码(PR)的完整贡献流程,帮助新贡献者快速上手。

贡献前准备

环境搭建

  1. 克隆仓库
    首先通过 Git 克隆项目代码库到本地:

    git clone https://gitcode.com/gh_mirrors/re/react-native-bottom-sheet.git
    cd react-native-bottom-sheet
    
  2. 安装依赖
    项目使用 Yarn 管理依赖,执行以下命令完成环境初始化:

    yarn bootstrap
    

    该命令会安装根目录及 example/ 目录下的所有依赖,并配置 iOS 平台的 CocoaPods。

  3. 验证开发环境
    启动示例应用验证环境是否正常工作:

    # 启动 Metro 打包器
    yarn example start
    
    # 运行 Android 示例
    yarn example android
    
    # 运行 iOS 示例
    yarn example ios
    

    示例应用位于 example/src/screens/,包含基础用法、高级特性及第三方库集成示例。

贡献规范

  • 行为准则:所有贡献者需遵守 CODE_OF_CONDUCT.md,确保社区互动友好且包容。
  • 提交信息规范:遵循 Conventional Commits 规范,格式为 <类型>[可选作用域]: <描述>,例如:
    • feat: 添加自定义背景组件
    • fix: 修复滚动时底部弹窗跳动问题
    • docs: 更新 BottomSheetModal 文档

发现与报告问题(Issue)

查找 Issue

  1. 筛选现有 Issue
    在提交新 Issue 前,先通过标签筛选现有问题:

    • good first issue:适合新手的入门任务
    • bug:已确认的缺陷
    • enhancement:功能增强建议
  2. 新建 Issue
    若发现未被报告的问题,通过 GitHub Issues 提交,需包含以下信息:

    • 问题描述(复现步骤、预期行为、实际行为)
    • 环境信息(设备型号、系统版本、库版本)
    • 代码示例或截图(可使用 example/ 项目复现问题)

代码开发流程

分支管理

  1. 创建分支
    基于 main 分支创建功能分支,命名格式为 <类型>/<描述>

    git checkout main
    git pull origin main
    git checkout -b feat/custom-footer
    
  2. 开发与测试

    • 功能开发需对应修改源码,核心组件位于 src/components/,如底部弹窗容器 src/components/bottomSheetContainer/
    • 添加或更新测试用例,确保代码覆盖率,测试命令:
      yarn test
      
    • 运行代码检查工具验证代码质量:
      # 类型检查
      yarn typescript
      
      # 代码 lint
      yarn lint
      
      # 自动修复格式问题
      yarn lint --fix
      

提交代码

  1. 提交变更
    使用规范的提交信息提交代码:

    git add .
    git commit -m "feat: 添加自定义底部工具栏组件"
    

    项目配置了 pre-commit 钩子,会自动检查提交信息格式及代码规范。

  2. 保持分支同步
    在提交 PR 前,同步主分支最新代码避免冲突:

    git fetch origin main
    git rebase origin/main
    

提交与审核 PR

准备 PR

  1. PR 描述模板
    提交 PR 时需遵循模板填写以下内容:

    • 变更类型(Bug 修复/功能新增/文档更新等)
    • 实现细节(核心逻辑、API 变更)
    • 测试步骤(如何验证变更有效性)
    • 相关 Issue 链接
  2. 代码自查清单

    •  已添加测试用例
    •  文档已更新(如涉及 API 变更,需修改 website/docs/
    •  所有命令运行通过(yarn testyarn lintyarn typescript

PR 审核流程

  1. 自动化检查
    PR 提交后,CI 会自动运行以下检查:

    • 代码规范与类型检查
    • 单元测试覆盖率
    • 示例应用构建验证
  2. 人工审核
    项目维护者会审核代码质量、功能完整性及兼容性。可能需要根据反馈进行多轮修改,通过 git commit --amendgit rebase 更新提交。

  3. 合并代码
    审核通过后,维护者会将 PR 合并到主分支。合并后可删除功能分支:

    git checkout main
    git pull origin main
    git branch -d feat/custom-footer
    

高级贡献场景

文档改进

项目文档位于 website/docs/,使用 Docusaurus 构建。若需修改文档:

  1. 编辑 Markdown/MDX 文件(如 website/docs/usage.md
  2. 本地预览文档:
    cd website
    yarn start
    

示例应用更新

示例应用是功能展示的重要途径,可通过以下方式增强:

贡献者徽章

活跃贡献者将被添加到项目贡献者列表,具体可参考 CONTRIBUTING.md 中的激励机制。

贡献流程总结

贡献流程图

  1. 发现问题 → 2. 认领/创建 Issue → 3. 开发与测试 → 4. 提交 PR → 5. 审核与合并

通过以上流程,任何人都可以为 react-native-bottom-sheet 项目贡献代码、文档或想法。项目维护者会定期回顾社区贡献,并在 CHANGELOG.md 中致谢。

资源链接

【免费下载链接】react-native-bottom-sheet A performant interactive bottom sheet with fully configurable options 🚀 【免费下载链接】react-native-bottom-sheet 项目地址: https://gitcode.com/gh_mirrors/re/react-native-bottom-sheet

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值