Bitcoin-Core-Development
比特幣核心開發貢獻
我學到了很多關於比特幣如何運作的知識。現在我想為比特幣原始碼做貢獻,我該怎麼做?
當然,比特幣是開源的,所以任何人都可以到這裡的比特幣倉庫開始送出。這個社區中的大多數使用者現在可能已經發現我不是專業的電腦科學家(充其量我有很強的數學技能和命令式程式經驗 - python、R)。這個問題是主觀的,但這個社區中有幾個使用者是 Bitcoin Core 的主要貢獻者,並且可能對原始碼及其周圍的社區有廣泛的了解。我希望這個問題的答案可以為希望參與為比特幣核心做出貢獻的非專業人士提供廣泛的資源和建議列表。要解決的主題可能包括:
- 學習 C++ - bcc 中廣泛使用的必須掌握的概念/bcc 中很少使用的概念,可以被刷過/學習 C++ 的資源
- 了解程式碼結構- 在舊版本的 bcc 中,有一個 main.cpp 似乎是一個合乎邏輯的起點。在 bcc 0.21.0 中,我不再看到“主”文件,實際上可以找到很少的文件可以將程式碼與我知道的比特幣概念相關聯。不知道從哪裡開始。
- 社區/密件抄送目標——一旦我掌握了一些 C++ 技能和程式碼結構知識,我將如何在密件抄送中找到需要開發或貢獻的東西?顯然,我不希望為新的橢圓曲線編寫整個庫,或者引入下一個節省空間的概念,如 segwit,那麼我怎樣才能找到適合我能力水平的方法來提供幫助呢?哪裡有社區在談論可以做些什麼?我想 BIPS(比特幣改進提案)將在這裡發揮作用。更好的是,一旦我掌握了一些技能,我在哪裡可以找到一個可能的導師!
- 完整節點/修剪節點 - 執行完整節點/修剪節點對於此旅程(可能用於測試等)是否必不可少?是否有較小的項目或練習可以幫助實現成為密件抄送開發人員的目標?
任何其他建議,資源,連結當然歡迎。我認為,一旦一個人對上述這些主題有了很好的理解,他們就可以開始使用該站點,然後以通常的方式繼續使用該站點解決更具體的技術問題。
- 複製比特幣核心倉庫,自己建構和測試:https ://jonatack.github.io/articles/how-to-compile-bitcoin-core-and-run-the-tests
- 在<https://bitcoin.stackexchange.com>上積極學習和貢獻
- 使用此處提到的不同 RPC 命令試驗比特幣核心 GUI (qt) 和 CLI:https : //bitcoincore.org/en/doc/0.21.0/ 在 testnet 和 regtest
- 一旦你了解了事情是如何工作的,開始在https://github.com/bitcoin/bitcoin/issues中尋找你可以解決的問題,或者從“良好的第一個問題”開始使用拉取請求,或者如果你在測試時發現問題就創建問題.
- 參加比特幣核心公關評論俱樂部會議:https ://bitcoincore.reviews/
- 你也可以開始審查其他 PR,因為比特幣核心有更少的開發人員來審查大量延遲事情的程式碼。
- 除了 r/bitcoin 上的一些技術文章、比特幣開發者部落格等之外,IRC 頻道可能會有所幫助:#bitcoin-core-dev #bitcoin-core-pr-reviews ##bitcoin-core-gui