A hard fork is a way of changing the programming protocol of a blockchain, resulting in a split into two branches of the same blockchain. This happens when the update involves a fundamental change in the blockchain structure, making the new version of the blockchain incompatible with the old.

When a blockchain undergoes a hard fork, it is divided into two separate versions – the original version and the new version. The new version follows the new programming protocol, while the old version continues to operate as normal, according to the original protocol.

To successfully transition to the new branch of the blockchain, holders of coins on the original blockchain must transfer their coins to the new version of the blockchain. For example, the holders of Bitcoin had to transfer their coins to the new version of the blockchain to start using Bitcoin Cash or Bitcoin SV, which are the result of two hard forks. Holders of Bitcoin Cash were also required to move their coins to the new blockchain to start using Bitcoin SV.

The miners, on the other hand, need to choose the branch that they want to be part of. If a miner decides to join the original blockchain, then it will continue to generate blocks following the original programming protocol. If a miner decides to join the new branch of the blockchain, then it will generate blocks following the new programming protocol.

In a hard fork, all holders of the coins will receive an equivalent amount of coins on the new version of the blockchain, while the miners need to make a choice as to which version they wish to support and mine.

A hard fork is a major change, and is not to be undertaken lightly. It can be a complex, time-consuming, and expensive process. Because of the need to coordinate with many different players in the crypto space, it can also be an emotionally charged process. Hence, it is not uncommon for the crypto-community to discuss any potential plans to hard fork in detail and debate vehemently over it before any changes are actually implemented.