The idea of forking is really core, and even for software programmers like the original domain in which fork is used is not until the invention of the Centralized Version Control Systems, and with it the conflict-free resolution data types that it makes merging, really, almost effortless.