Pull requests in github is actually very similar conceptually to a consensus mechanism used in crypto currencies. Everyone has an identical copy of the main branch with an identical history of every commit in order, a PR is saying "I think this commit goes next" and, if you use code reviews, the PR approval is consensus.
git is very much a blockchain
- sequential list of changes to a data source (commits)
- single, shared history of changes (main branch)
- users creating potential next change(s) to be added to the history (side branches and forks)
- consensus mechanism for new change blocks (merge requests and code reviews or approvals)
What's missing?