此頁面收集計畫構想,提供給尋找規模較大任務的志工。如果您希望對 Subversion 做出重大貢獻,但尚未確定想從事哪方面的工作,這個頁面適合您。
這些計畫構想被認為適合 Google Summer of Code 和 女性外展計畫 等計畫。
改善與其他程式語言的綁定。
Subversion 的優點之一是它提供豐富的「綁定介面」:不僅在 C(Subversion 的原生語言)中提供 API,也提供其他程式語言(目前為 Perl、Python、Ruby 和 Java)。
這些語言繫結中有些是透過 SWIG 維護的,這是一個部分自動化繫結產生程式的工具,而其他則是手動維護的。許多繫結尚未涵蓋完整,或是有介面問題(例如,它們可能未公開 Subversion 最新版本的全部 API 元素)。因此,即使繫結已用於許多生產系統,並用於建置熱門的 Subversion 客戶端,例如 Subclipse,但仍有許多工作要做。
繫結使用者面臨的另一個重大問題是缺乏針對繫結的 適當文件。
所需的技術技能
顯示進度輸出。
改善更新和提交期間顯示的進度輸出。請參閱 問題編號 #901 以取得詳細資料。
所需的技術技能
改善「svn 說明」。
目前,svn 說明 命令顯示的文字直接維護在 svn 二進位檔的主要原始程式碼檔案中,可在此處 線上檢視。已 建議 將這些說明文字移至獨立的檔案格式。
這可以簡化說明文字翻譯的維護,允許為每個 svn 子指令運送 UNIX 風格的手冊頁面,並且可能整合說明文字和 參考部分 的 Subversion Book。
也有人 建議 在 svn help 中新增教學模式,讓新使用者更容易在不先參考文件的情況下開始使用 Subversion。
所需的技術技能
更可自訂的 'svn diff' 行為。
新增支援完全可自訂的外部分歧呼叫,以及支援非文字類型的外部分歧指令。有關詳細資訊,請參閱 問題 #2044 和 問題 #2447。
所需的技術技能
'svn mergeinfo' 的 XML 輸出
教導 svn mergeinfo 建立 XML 輸出。有關詳細資訊,請參閱 問題 #4245。
所需的技術技能
實作 'svnadmin unpack'
一旦 FSFS 儲存庫經過封裝,其分片大小就不能再變更。此外,它也無法受益於後續版本中的封裝改進。
在 svnadmin 中新增 unpack 子指令,將封裝的 FSFS 儲存庫還原為未封裝狀態。儲存庫在解封裝過程中將會離線(與封裝即時儲存庫相反)。後續的改進可能包括 repack 和 reshard。
所需的技術技能
啟用互通性測試。
測試架構 (make check) 對於使用不同客戶端和伺服器版本進行測試的支援有限(例如,1.8-dev 客戶端和 1.7 伺服器;或反之亦然)。讓執行此類互通性/相容性測試變得更容易。理想情況下,也為設定 buildslave 奠定基礎,以定期執行這些測試(我們將提供硬體)。
相關目標是與舊有的磁碟格式相容,但在撰寫本文時,作者認為 --server-minor-version 選項和 upgrade_tests.py 已涵蓋所需內容。
所需的技術技能
以上皆非?在問題追蹤器中尋找專案構想!
我們的 問題追蹤器 包含許多開放任務和未修正的錯誤。 可能相對容易修正的問題清單 是個良好的起點。
如需有關如何貢獻或與我們討論您的貢獻的更多資訊,請聯絡 dev@subversion.apache.org
請注意,dev@ 清單是公開封存的,這表示任何人都可以閱讀傳送至該處的任何資訊,且傳送至該處的資訊無法在之後被刪除。