💾 Archived View for vi.rs › git-critique captured on 2020-09-24 at 01:23:36. Gemini links have been rewritten to link to archived content

View Raw

More Information

-=-=-=-=-=-=-

Table of Contents

Part 3: Git Isn't Very Decentralized

█░█░█ hen Linus designed Git he didn't build in decentralized solutions to all

▀▄▀▄▀ nine of the problems of distributed systems. As you will see, these

design choices made centralized corporate capture inevitable and something to

be concerned about.

Git's primary problems are its lack of decentralized solutions for discovery,

coodrination and coherence. How does a Git user find other people interested in

collaborating on a software project (i.e. discovery)? How does a Git user

easily exchange commits/patches and stay synchronized with other contributors

(i.e. coordination)? How does a Git user re-connect with their collaborators

after their flight to Hong Kong and everybody's IP addresses have changed (i.e.

coherence)?

Developers using Git must use an out-of-band (OOB) channel to find each other

and (re-)establish connections before they push/pull commits with each other.

Both of these shortcomings were supposed to be solved with email to exchange

patches instead of connecting to one another directly. However, the difficulty

of setting Git up to use email is prohibitive for most users, and only a select

few open source projects use it.

It is easy to see why the original design of Git didn't include decentralized

solutions and relied on email. Git was designed by Linus Torvalds for use with

the Linux Kernel project which relies exclusively on emailed patches for

collaboration. This historical affectation of the Linux Kernel community leaves

every other developer in the world longing for an easier solution. That desire

made centralized solutions such as Github and Gitlab inevitable. In the case of

the former, the design holes in Git created a $7,500,000,000 economic

opportunit for a corporation to exploit for profit.

Microsoft Buys Github for $7.5B

Microsoft buying Github should make everybody nervous. What happens if Github

suddenly becomes only compatible/optimized to work with VS Code and Azure

Pipelines? You know that is coming. Why do you think the Windows Subsystem for

Linux exists?

Windows Subsystem for Linux

This is how Microsoft plans to make Linux/OSS hackers into Microsoft hackers

running Windows and using AZP with, and through, Github. The Git protocol is

standardized but what about all of the other necessary communications to really

develop software collaboratively and to maintain a community around it

(i.e. coordination)? Github uses HTTPS but the API's are entirely proprietary.

That's is all Microsoft needs to close the loop around the entire Github market

share of the open source world.

The entire open source world relies on Github and is now dependent on the

continued goodwill of Microsoft. Let us not forget the sustained assault

Microsoft waged against the Linux community and open source in general all

through the 1990's and 2000's. The bad blood makes many open source developers

uneasy about the current situation. It is time to move away from Git and Github

to a fully decentralized collaboration tool for writing software, tracking

bugs, discussing changes, and managing project governance.

▪ .

.

█▀▀ █░█ █▀▀ █▀▀ █▀█ █▀ █

█▄▄ █▀█ ██▄ ██▄ █▀▄ ▄█ ▄

. ▛ ╿ ▋

▎ ▪ ╵ ▎ .

▏ ╵ ▏

Table of Contents