Protocol

如何部署比特幣等應用程序的程式碼更改(例如新功能)以及如何保持兼容性?

  • June 9, 2017

比特幣如何部署新功能和管理不同版本的兼容性?

例如,如果向比特幣添加了一項新功能,那麼它是如何部署和管理的?也就是說,當有新版本可用時,如何不強製網路上的每個人升級?

如果不強制升級/更新,比特幣如何管理網路上不同版本的比特幣?是否有最低要求的版本以某種方式分佈在網路中?

通常程式碼被編寫、測試並合併到發布中,然後部署關閉。根據變更,它可以在特定日期、區塊、網路達成共識時(一定百分比的人同意實施)或當開采的x個區塊支持新變更時啟動。

程式碼可以是硬分叉的,也可以是軟分叉的,開發人員試圖使更改盡可能向後兼容以避免客戶端問題。

偶爾不兼容的客戶端會生成奇怪的塊(例如最近的 1.01MB 塊),這些塊會被網路的其餘部分孤立或丟棄。甚至是幾個區塊鏈成為孤兒,這是您在轉賬後應該等待多個成功確認的原因之一。

引用自:https://bitcoin.stackexchange.com/questions/54313