A fork, when discussing blockchain technology, is a change to a blockchain’s underlining protocol or software, introduced by a developer of that blockchain.
It’s a software upgrade!
From time to time, developers like to make changes to a blockchain, such as adding new blockchain functionality, correcting security issues, creating entirely new coins, or even changing the consensus protocol that governs how blocks are created and validated on a blockchain.
Forks introduce those changes to the blockchain, by creating a second blockchain (n the case of a hard fork), a copy of the original blockchain but with the changes added to the second blockchain.
With soft forks, the changes that take place are minor and don’t create a completely separate blockchain. Nodes that perform a soft fork are still compatible with nodes that don’t perform a soft fork.
On the other hand, after a hard fork, two separate blockchains exist in parallel to each other. The two chains share common data and transaction history up until the hard fork.
After the hard fork, newly mined blocks will only exist on the blockchain where they were validated and created.
With hard forks, any blocks created using the old protocol are incompatible with the newly upgraded blockchain.
Software changes can be minor in scope as in the case of soft forks.
The proposed upgrades can also dramatically alter the original ruleset that governs how a blockchain operates, in which case they’re referred to as a hard fork.
Forks are necessary in providing decentralized blockchains a way to make changes to the blockchain since there isn’t a central authority governing all aspects of blockchain development and evolution.
The blockchain community comprised of developers, node operators, and miners all
Bitcoin Cash and Bitcoin Gold came into existence out of the original Bitcoin blockchain because of a hard fork.