Difference between revisions of "Development process"

From Bitcoin Wiki
Jump to: navigation, search
(link is offline)
(With Satoshi having disappeared I think it's safe to say Bitcoin is no longer a "one-person software endeavor". :))
Line 1: Line 1:
 
== Bitcoin Open Source Development Process ==
 
== Bitcoin Open Source Development Process ==
  
The [[Original_Bitcoin_client|Bitcoin client]] project is transitioning 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.  The Linux Kernel development process is being used as the model for how changes flow into the official Bitcoin application:
+
The [[Original_Bitcoin_client|Bitcoin client]] project 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.  The Linux Kernel development process is being used as the model for how changes flow into the official 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 [http://www.bitcoin.org/smf/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 [http://www.bitcoin.org/smf/index.php?board=6.0 Development and Technical Forum].

Revision as of 12:36, 2 July 2011

Bitcoin Open Source Development Process

The Bitcoin client project 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. The Linux Kernel development process is being used as the model for how changes flow into the official Bitcoin application:

  1. 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.
  2. 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.
  3. 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.
  4. 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.

Please read and follow coding.txt (link offline) for a description of the bitcoin coding style.

See Also