治理¶
核心團隊(/about/team.md)裡那些勤勞的蜜蜂們肩負著多項責任,確保這個名為 BeeWare 的蜂巢持續運轉。由於這是個不斷演進的專案,本頁面內容可能隨時變動。
這些工作包括但不限於回應問題、檢閱 和合併程式碼,指導新的貢獻者,以及整個BeeWare項目的架構。 BeeWare 專案的整體架構。
有一些人,我們信任他們來做程式碼的決策;有一些人,我們 我們信任的人來做程式碼和組織的決策;有一個人 他負責引導整個組織的願景,並在社群無法達成共識的情況下 在社群無法達成共識時,由他來做最後決定。
團隊資歷¶
BeeWare 專案中的不同資歷等級如下:
蜜蜂,或工蜂¶
任何 BeeWare 社群成員。由於我們在 GitHub 上公開協作,任何人都能提出程式碼修改建議並將其合併。您貢獻能力的唯一限制,在於您的工作需經由具備權限的團隊成員進行合併。
養蜂人¶
一位被認可為可信賴貢獻者的蜜蜂。這些蜜蜂在一段時間內展現出與 BeeWare 專案特定部分相關的專業能力。這可能體現在技術層面(JavaScript、Python、Objective-C 專業知識;GTK+、macOS 技術掌握),或體現在其他層面(社群管理、程式碼審查)。養蜂人亦可能因其專業能力獲得專案的提交權限。
資深養蜂師¶
在 GitHub 擁有高級存取權限的養蜂人,同時肩負監督整個專案的額外責任。他們有權制定架構決策,但最終須向 BDFN 負責。
暫時的蜜蜂仁慈獨裁者(BDFN)¶
關於「終身仁慈獨裁者」(https://en.wikipedia.org/wiki/Benevolent_dictator_for_life)的詮釋,專案方向與決策的最終責任歸屬於BDFN。使用「暫定」而非「終身」一詞,呼應了Django的核心理念——避免將核心維護者的職責綁定於個人自然生命的終結。 人生不僅限於開源世界,保持程式碼與生活的平衡及整體福祉,是我們必須時刻銘記的重要課題。
BeeWare 的 BDFN 是 Russell Keith-Magee。
創始養蜂人¶
首位站在山丘上,發現一頭需要剃毛的犛牛之人。此角色永不更迭,無限延續;然而,它本身並未在組織中轉移任何額外權力。目前,創始養蜂人同時也是BDFN;但這可能隨時間改變。
指引(非正式規則)¶
就像任何有一個以上的人有提交權限的專案一樣,有一些一般的準則是團隊應該遵守的。 團隊應該遵循許多一般準則:
- 向更廣泛的社群展現專案的良好形象
- 請以尊重的態度對待任何BeeWare專案的查詢與貢獻
- 假設每個人都有善意,即使他們沒有選擇恰當的措辭
- 假設當有人以「錯誤」的方式行事時,那是因為我們未能有效傳達流程。
- 假設任何憤怒或挫折的表達,皆源於真心希望使用 BeeWare 工具/函式庫
- 鼓勵社群中的其他成員,無論在 BeeWare 社群內部或外部的溝通中,都體現這些理念。
- 任何養蜂人都不應提交自己的程式碼
- 例外:「某個環節嚴重失靈,必須立即修復」
- 例外:BDFN(此情況未來可能有所變動)
- 所有提交給核心團隊成員審查的程式碼,都應由另一位團隊成員進行審查。
- 例外:BDFN(此情況未來可能有所變動)
- 所有程式碼在合併前都應通過持續整合測試
- 例外:已知存在缺陷但因其他原因必須提交的程式碼
- 例外:存放庫中的程式碼缺乏足夠的持續整合測試
- 例外:勤奮且盡責,勝過完美卻不作為
- 盡可能將接受流程自動化
- 這意味著測試、程式碼檢查、拼寫檢查、程式碼覆蓋率檢測等等
成為養蜂人¶
新的養蜂師是否加入團隊由現有的核心團隊自行決定。 由現有核心團隊自行決定。雖然目前沒有任何確實的規則 儘管目前並沒有任何確實的規則,但一般而言,如果某人對 BeeWare 專案有確實的貢獻,則會被邀請成為該專案的養蜂師。 BeeWare 專案的貢獻。 專案。這也可以延伸到具有特定領域 知識(例如,iOS/macOS)的人,而這些知識可能是現有團隊所缺乏的。 這也可以擴展到具有特定領域知識(例如,iOS/macOS)的人。這也不一定要基於提交。任何人只要 能夠證明對專案有既得利益的人,都可以 請求允許提交到專案中。
所有新加入的養蜂人將接受本專案核心價值觀與指導方針的「入職培訓」(暫且如此稱呼)。核心價值觀摘要可參閱關於頁面。凡加入團隊者,皆須恪守這些價值觀,並參與關於價值觀演進的討論。
任何養蜂師,不論是新手或老手,都不希望成為任何一種東西的唯一維護者。 任何一件事。有許多的養蜂師,以及許多旁邊的人可以 提供協助、建議和指導。
「提交位」?¶
在 Unix 系統中,檔案中的單一位元用來表示執行檔案的權限。 執行檔案。在原始碼控制系統中,也有類似的 bit 表示合併程式碼的能力。如果說某人擁有 "commit bit" 意味著他們擁有對代碼庫的寫入權限。在 GitHub 中,這表示 他們有能力合併 Pull Request 並直接提交程式碼到 專案。