本頁應能引導您為 Mozilla 貢獻。歡迎,我們很高興見到您!

需要幫助嗎?

Mozilla 社群自豪於她是一個對新參與者開放、易接觸與友善的社群,如果您有任何困難,或是尋求答案,請將那些問題發布到 irc.mozilla.org 的 #introduction chat room 讓我們可以協助您。

我們知道,在您開始貢獻前,設定並開始使用 Firefox 以及找一個與您能力相符的 bug 會是一個挑戰。我們一直在尋找能夠改善這些程序的方法,好讓 Mozilla 更為開放、易接觸以及更容易參與。如果您在使用這些文件出了問題,或是遇到了瓶頸,請直接利用電子郵件聯絡 Mike Hoye (mhoye@mozilla.com) ,好讓我們能解決您的問題以及往後的新參與者。

我需要甚麼技能呢?

Mozilla 是個龐大的專案,我們很高興能夠接納擁有各種不同能力的貢獻者。

  • 如果您會 C++,您可以幫忙貢獻有關 Firefox 與其他 Mozilla 產品的核心部份。
  • 如果您會 JavaScirpt 或是 HTML/CSS, 您可以幫忙參與 Firefox 的前端。
  • 如果你會 Java,你可以替 Firefox for Android 和 MozStumbler 做出貢獻。
  • 如果你會 Python,你可以替我們的網路服務做出貢獻,像是 Firefox Sync 和 Firefox Accounts。
  • 如果你會 MakeshellPerl、或是 Python,你可以替我們的建制系統做出貢獻。
  • 如果你會 C,你可以協助 NSS、 Opus、以及 Daala。
  • 如果你會 Rust,你可以幫忙 rustc、Servo(一個專為平行與安全設計的瀏覽器引擎)、Quantum(一個把 Servo 應用到 Gecko 的專案)。
  • 還有許多不需要寫程式就能貢獻 Mozilla 的方法。如果你想參與設計、支援、翻譯、測試或者其他種類的貢獻,請參考貢獻機會

也許你不會寫程式但你想開始學?這也很棒:Mozilla 開發者網路(MDN)有很多資源

第一步 - 建置桌面版或 Android 版的 Firefox

如果你想貢獻 Firefox,這裡有建置桌面版 Firefox 的簡單的指示(英);對於移動端貢獻者,則可在這裡開始建置 Android 版的 Firefox(英)。一開始可能花一點時間,因為有很多東西需要下載,所以你可能希望在他建置的過程進到下一步。更多的建置指示在這裡

Mozilla 的其他產品,包含社群支援的 Thunderbird 建置(英),可以透過快速搜尋找到,此外你常常能在不建置任何環境的情況進行貢獻。

第二步 - 找點事情來做

修正那些討人厭的小問題

如果你想修 Firefox、Thunderbird 或其他你喜歡的 Mozilla 應用程式,下面會是很好的起點。這裡有許多方法:

找到一個我們認為適合初學者的 Bug

Bugzilla 上有超過百萬個 Bug 讓貢獻者很難開始著手修理,所以我們建立 Bug 分類來讓貢獻輕鬆點:

  • Good First Bugs 是在 Mozilla 生態系開始生存的好方法,這些都是一些小變更,通常只有幾行,但他們很適合用來學習如何配置你的開發環境、熟悉 Bugzilla 和如何在 Mozilla 的程式基地貢獻。
  • Mentored bugs 稍微有點難度,但會有個導師被指派來幫你。通常會有足夠的資訊來讓你開始修理,而當你需要協助時,到 IRC、Bug 頁或透過 Email 找導師。當你修復了這個 Bug,他們會協助你把程式碼發布。
  • 追蹤 @StartMozilla 的 Twitter,這裡每天都有給新來 Mozilla 的貢獻者的 Good First Bugs。
  • 看看 firefox-dev.tools,這裡列出了給新貢獻者的 Firefox Developer Tools Bugs。
  • Student Projects 是更大的專案,通常適合本科系大學生。當然,即使你不是學生,仍然歡迎來修復這些 Bug。我們有兩個清單,一個是 基於現有的程式碼 的專案,另一個是 新的應用程式

第三步 - 修復 Bug

這裡還有些能幫助你的資源:

第四步 - 將你的程式碼呈報上來

一旦你完成修復,在 Bug 頁附上補釘 並且請求檢核。 點擊在你的附件上的 Details 連結,設定 review 標籤成 ? 並在出現的文字輸入框輸入檢核者的 Bugzilla ID  (可以是 Email 地址或者他們提供的 :UniqueName)。一定要附上 Bugzilla ID,不然呈報會被捨棄。但你要如何找到對的人來檢核?

  • 如果你有導師,問你的導師,他們會知道(或輕易找到)。甚至就是他們。
  • 執行 hg blame 然後看誰用過這個功能,他們會是很好的人選。
  • Bug 本身可能包含一個明確的指示告訴你誰是最適合的人。
  • 有相關的 Bug 或相似的主題?在這情況,這些 Bug 的檢核者通常是很好的選擇。
  • 我們有個過時的模組清單,列出了模組的管理者和擁有者,有些會是很好的檢核者。在某些不幸的情況下,你可以設定模組的擁有者為檢核者,然後在留言請求他們,或幫忙找個人。

步驟四之二 - 好好的盯著它

一旦你請求檢核,通常會有個檢核者在一天內...也許兩天回來看看,他們有可能把擱置,如果你沒收到回音,不要害怕,找到他們:在留言處說 'review ping?',把檢核者 ID 加入 "Need more infomation from:" 的清單中。如果過了一兩天還是沒回應,請到 IRC 的 #introduction#developers 頻道尋求協助,或直接聯絡 Mike Hoye

第五步 - 對於你的呈報有所回應

對於大多數的新貢獻者,甚至是資深 Mozillan!得到的檢核會是 r-。這不代表你做的不好,而是在把你的程式碼合併前還有些事情必須完成。你的修正也許需要一些變更,或多或少,你的檢核者會給你一些接下來的指引。

這是個重要的流程,所以不要因此沮喪!有著長時間累積的程式碼和數千萬的使用者,這些合併程式碼前的考量是 Mozilla 專案的基礎。完成檢核者要求的變更,如果你不知道該怎麼做,那就問吧!接著附上新的補釘到 Bug 頁,然後再次要求同一個檢核者檢核。當他們給你 r+ 時表示你的修復已經被接受了!

第六步 - 讓程式碼確實合併

一旦你的補釘收到 r+ 檢核,表示準備好合併了。但在那之前,你的補釘必須在我們的測試伺服器上完成測試以確保不會引發任何意外的錯誤。如果你沒有測試伺服器權限,那麼你的導師或檢核者會去處理。

一旦你在測試伺服器得到綠燈(正常運作),在 Bug 頁中上方關鍵字欄位加入 checkin-needed 來將你的補釘標記成準備好發布。接著會有個具有發布權限的好 Mozillan 將你的補釘推送到程式庫中,如果需要,他們會更新 Bug 的資訊。如果你的補釘通過所有的 Mozilla 自動測試,他會在每夜建置中被合併到主線,正式被發布。

第七步 - 重複地做

謝謝你,你修正了第一個 Bug,Open Web 因此更為強大。但不要停下。

回到第三步,還有更多事可做。你的導師可以建議你另一個 Bug,或者你可以自己找找看。現在你已經修正一個 Bug,你可以要求程式庫的第一級權限,這樣你便可以推送到測試伺服器並收到你的補釘在不同平台的測試結果。當你修了更多 Bug,你可以要求第三級的權限,這樣你就可以把你的 r+ 補釘直接推送出去。

更多資訊

我們一直在加強這個頁面的專案資訊以供新來的人參考。接下來這個頁面會將這些訊息移植過來,但在那現在也許你想自己去看看:

文件標籤與貢獻者

 此頁面的貢獻者: flyinglimao, cnevinc, wildsky, grapherd, lekaha
 最近更新: flyinglimao,