Muneeb Ali of Onename has a thoughtful article which explains why Bitcoin is not like a traditional open source software project.
Forking a stand-alone software, like a browser or OS, and implementing changes is quite different from pushing changes to a networking protocol.
Historically, we’ve seen that pushing updates to networking protocols is a slow and tedious process; IPv4 to IPv6 comes to mind. You can upgrade, but other nodes also need to understand the new protocol that you’re using.
The Bitcoin network is not a typical computer network. It has built in economic incentives for people to switch to the largest network. An attempt to make nodes upgrade can result in either:
a) the network quickly converging on a single version or
b) splitting into two separate networks that use different currencies.
Read the rest at Forking a Network — Medium