GitHub redefined the term 'fork' to mean a personal copy of a repository used to propose changes via pull requests — what the broader git community would call a 'personal branch'. The original meaning of 'fork' refers to a permanent, independent split of a project (e.g., ffmpeg → libav), typically a traumatic event. Git was designed around a 'bazaar' model where there is no single canonical upstream, and contributors share changes via email-based workflows. GitHub's centralized 'cathedral' model co-opted these terms to keep users on their platform, obscuring git's truly distributed nature. The same rebranding happened with 'pull request', which git itself implements as a distributed email-based tool.

6m read timeFrom drewdevault.com
Post cover image

Sort: