Development process: Difference between revisions
Jump to navigation
Jump to search
→Bitcoin Open Source Development Process: Reference this is for Bitcoin Core specifically. |
→Bitcoin Core Open Source Development Process: Add paragraph from Bitcoin project repo about contributing. |
||
Line 1: | Line 1: | ||
== Bitcoin Core Open Source Development Process == | == Bitcoin Core Open Source Development Process == | ||
The [[Original_Bitcoin_client|Bitcoin Core]] | The [[Original_Bitcoin_client|Bitcoin Core]] project operates an open contributor model where anyone is welcome to [https://github.com/bitcoin/bitcoin/blob/master/CONTRIBUTING.md contribute] towards development in the form of peer review, testing and patches. | ||
Bitcoin Core has transitioned from what was essentially a one-person software endeavor, with Satoshi functioning as the primary developer and gatekeeper for all changes, to a more distributed, free software model of development with hundreds of [http://github.com/bitcoin/bitcoin/graphs/contributors contributors]. The Linux Kernel development process is being used as the model for how changes flow into the original Bitcoin application: | |||
# Developers work in their own source code trees, sharing and testing patches with each other. Git, using github, is the preferred source control system for development. | # Developers work in their own source code trees, sharing and testing patches with each other. Git, using github, is the preferred source control system for development. | ||
# When a developer thinks a patch is ready, they submit a pull request for the [https://github.com/bitcoin/bitcoin bitcoin github repository] and post a message on the [https://bitcointalk.org/index.php?board=6.0 Development and Technical Forum]. | # When a developer thinks a patch is ready, they submit a pull request for the [https://github.com/bitcoin/bitcoin bitcoin github repository] and post a message on the [https://bitcointalk.org/index.php?board=6.0 Development and Technical Forum]. |
Revision as of 13:06, 27 September 2015
Bitcoin Core Open Source Development Process
The Bitcoin Core project operates an open contributor model where anyone is welcome to contribute towards development in the form of peer review, testing and patches.
Bitcoin Core has transitioned from what was essentially a one-person software endeavor, with Satoshi functioning as the primary developer and gatekeeper for all changes, to a more distributed, free software model of development with hundreds of contributors. The Linux Kernel development process is being used as the model for how changes flow into the original Bitcoin application:
- Developers work in their own source code trees, sharing and testing patches with each other. Git, using github, is the preferred source control system for development.
- When a developer thinks a patch is ready, they submit a pull request for the bitcoin github repository and post a message on the Development and Technical Forum.
- Pull requests are discussed on the forums and if there is consensus they're safe, tested, useful, well written, match coding style, etc. then they're merged into the 'master' branch.
- The master github branch is regularly built and tested, and periodically pushed to the subversion repository to become a "release candidate" and then the official, stable, released bitcoin.
- After being accepted into the mainline master branch, bugfixes are merged or backported into the current stable branch, which periodically releases stable older versions.
Please read and follow coding.txt for a description of the bitcoin coding style.