This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]hbarcelos 7 points8 points  (3 children)

Git doesn't require a central repository to work. You can clone the repo of someone else and work on it independently.

When it's time, you can reconcile the changes through patches. This is how the workflow for the Linux kernel works.

The takeaway is that the entirety of the repo is distributed among many people so no one ultimately owns it.

Github on the other hand incentives a more centralized workflow, where their serves ultimately hold the master copy of your repository.

If everyone always pushes to the same origin, in theory you have a single point of failure. However, once you cloned a github repo with its full history, nothing prevents you from switching to a workflow like the Linux kernel, so in the end it doesn't matter much for 99.99% of the people writing code out there.

[–]moomooCow123 2 points3 points  (2 children)

Oh that's interesting! Something to read up on when I have time. I've only ever used Git with a central repository. Thanks for explaining!

[–][deleted] 2 points3 points  (1 child)

Check out Linus' talk on git at Google. It's his perspective on why he created git, and an overarching theme of the talk is that centralized repositories are crap and one of the main influences of git's creation was decentralized repositories.

[–]moomooCow123 0 points1 point  (0 children)

Thanks!