跳到主要內容

貢獻概覽

感謝您對貢獻 React Native 感興趣!從評論和分流 Issue,到審查和發送 Pull Request,我們歡迎所有貢獻。我們的目標是建立一個充滿活力且具包容性的合作夥伴、核心貢獻者和社群生態系統,超越主要的 React Native GitHub 儲存庫。

Open Source Guides 網站收集了許多資源,供想要學習如何執行和貢獻開放原始碼專案的個人、社群和公司使用。

貢獻者和開放原始碼新手都會發現以下指南特別有用

行為準則

提醒您,所有貢獻者都應遵守行為準則

貢獻方式

如果您渴望立即開始貢獻程式碼,我們有一個適合新手入門的 issue 清單,其中包含範圍相對有限的錯誤。隨著您獲得更多經驗並展現對 React Native 發展的投入,您可能會被授予儲存庫中的 issue 管理權限。

還有其他無需編寫任何程式碼即可貢獻的方式。以下是一些您可以提供協助的事項

  1. 回覆和處理未解決的 issue。

    我們每天收到大量 issue,其中一些可能缺少必要資訊。您可以協助引導人們完成填寫 issue 範本的流程、要求提供澄清資訊,或將他們指向與其問題描述相符的現有 issue。我們在GitHub Issue 分流頁面中更詳細地介紹了此流程。

  2. 審查文件 Pull Request。

    審查文件更新可以像檢查拼字和文法一樣簡單。如果您遇到可以在文件中更好地解釋的情況,請點擊大多數文件頁面頂部的編輯以開始您的貢獻。

  3. 協助人們編寫測試計畫。

    發送到主要儲存庫的一些 Pull Request 可能缺少適當的測試計畫。這些計畫有助於審查者瞭解變更的測試方式,並可以加快貢獻被接受所需的時間。

這些任務都非常有影響力,維護人員將非常感謝您的協助。

我們的開發流程

我們使用 GitHub issue 和 Pull Request 來追蹤錯誤報告和社群的貢獻。Meta 工程師的所有變更都將透過與 Meta 內部原始碼控制系統的橋樑同步到 GitHub。社群的變更則透過 GitHub Pull Request 處理。

一旦在 GitHub 上進行的變更獲得批准,它將首先匯入 Facebook 的內部原始碼控制系統,並針對 Facebook 的程式碼庫進行測試。一旦在 Facebook 合併,變更最終將在通過 Facebook 的內部測試後,以單次提交的形式同步回 GitHub。

您可以在以下文件中瞭解更多關於貢獻流程的資訊

我們還有一個蓬勃發展的貢獻者社群,他們很樂意協助您進行設定。您可以透過 @ReactNative 聯絡 React Native 團隊。

儲存庫

主要儲存庫包含 React Native 框架本身,我們在此追蹤錯誤報告並管理 Pull Request。

還有一些其他儲存庫您可能想要熟悉

瀏覽這些儲存庫應該可以深入瞭解 React Native 開放原始碼專案的管理方式。

GitHub Issue

我們專門使用 GitHub issue 來追蹤錯誤。我們在Issue 分流頁面中記錄了 issue 處理流程。

安全性錯誤

Meta 針對安全漏洞的安全揭露設有獎金計畫。在這些情況下,請按照該頁面概述的流程進行,不要提交公開 issue。

協助文件

React Native 文件託管為 React Native 網站儲存庫的一部分。該網站是使用 Docusaurus 建置的。如果您想更改文件中的任何內容,可以點擊網站中大多數頁面右上角的「編輯」按鈕開始。

如果您要新增功能或引入行為變更,我們將要求您更新文件以反映您的變更。

貢獻部落格

React Native 部落格是從部落格的 Markdown 原始碼產生的。

在撰寫預定用於 React Native 部落格的文章之前,請先在 React Native 網站儲存庫中開啟 issue,或在 Twitter 上標記 @ReactNative,並獲得維護人員的批准。在大多數情況下,您可能希望在您自己的部落格或寫作媒體上分享您的文章。不過,還是值得詢問一下,以防我們發現您的文章非常適合該部落格。

我們建議參考 react-native-website 儲存庫 Readme 檔案,以瞭解更多關於貢獻網站的資訊。

貢獻程式碼

對 React Native 的程式碼層級貢獻通常以 Pull Request 的形式出現。這些是透過 fork 儲存庫並在本地進行變更來完成的。

逐步指南

每當您準備好貢獻程式碼時,請查看我們的發送您的第一個 Pull Request 逐步指南,或閱讀如何貢獻程式碼頁面以瞭解更多詳細資訊。

測試

測試有助於我們防止將回歸引入程式碼庫。GitHub 儲存庫使用 CircleCI 持續測試,結果可透過 commits 和 Pull Request 上的 Checks 功能取得。

您可以在如何執行和編寫測試頁面上瞭解更多關於執行和編寫測試的資訊。

社群貢獻

對 React Native 的貢獻不限於 GitHub。您可以透過分享您使用 React Native 的經驗來幫助其他人,無論是透過部落格文章、在會議上發表演講,還是僅僅在 Twitter 上分享您的想法並標記 @ReactNative