Why is it people are using git in such a strange centralized way, like the way github works, instead of a more decentralized fashion?
When i look at the workflow in many software projects, i often see people using it like the very thing git was meant to replace, like svn. Often pulling and pushing to and from a central one-truth repository.
Are people just retarded? Or have I just completely misunderstood something about git?
How does one make git decentralized anyway? Maybe you're retarded
Chase Bailey
because git is built to be used however a project needs and what most projects happen to need is centralized development
Lincoln Turner
Use it peer 2 peer between developers
Oliver Cook
Huh, of course you will generally want one authoritative branch for your project's releases.
Git's advantage is mainly that you can have many local branches that may not even be pushed somewhere else plus that it is fast and good.
Daniel Thompson
>have I just completely misunderstood something about git?
Yes, git is about being able to work with a complete "check-out" of the source code at all time.
You don't really *need* a central repository, but then for N developers you'd need N*(N-1) merges (everyone merging their local version with the version they pull from everyone else) and every dev has to be on-line until all the other devs have done their merging.
With a central repo, you only need N merges for N developers.
Julian Howard
But wouldn't it make more sense if you had a tree of people pulling from each other, kinda like they do with the Linux kernel? I can see it work a lot better than the centralized model
Ayden Gutierrez
You mean push and pull to all the developers? Won't that just cause conflicts and is just too much work to do compared to pushing and pulling to one centralized server?
James Roberts
But everyone doesn't have to pull from everyone else, just a handful of people maybe even less. It would seem more natural, wouldn't it?
Luis Taylor
Nobody knows how to use git.
Henry Jackson
I guess you could make it work, but then, not everyone is up to date with the latest commit. I think it's a lot easier to test if everyone's just updated with the latest commit.
Liam Cooper
No. Why the hell would that work better for normal projects?
If you don't have thousands of developers and stuff you do not need multiple additional layers of people filtering and testing the code.
James Martinez
No, because everyone would have to do merge conflict resolutions by themselves, and these would have to be identical (which they won't be). So now you have as many forks as you have devs.
It *can* work as long as everyone stays on one particular section of the code, or you have a well-established order of merging, but that kind of defeats the entire point then.
Luis Butler
wow a solution that is robust, scalable, flexible, USABLE, modular, manageable, and blockchainable. I would love to see something like this percolate in the pipeline
Mason Rodriguez
convenience
Ayden Scott
>have I just completely misunderstood something about git? Yes.
1. Even when people are using github, their scm is still decentralized in that it exists in more than one place. The github repo just serves a special purpose in the graph. 2. git is flexible, and can be used properly in many different ways. Operating based on a centralized model or everybody being a complete peer in terms of responsibility are both valid git methodologies. Git is a tool that does certain things in a very flexible way, and how best to use it is left up to the user.
Owen Phillips
I fucking hate github. Downloading the source is always a pain and then the idiots forget to put the configure file in. Oh, and yall need to stop renaming everything to a .me extension.
Jeremiah Reed
What did they mean by this?
Brayden Morris
too many brainlets afraid they're gonna break everything If everyone is going to use Git in a centralized way like this wouldn't it be better to switch to something designed for centralized version control?
Cooper Sanders
People are retarded and things are hard.
Alexander Ortiz
t. brainlet
Charles Scott
Git is decentralized. Everyone who clones/pulls a project has all the code and the history. If the central repo is fucked then it is possible to restore it from any cloned copy. Central repo is just a point of synchronization. The only difference between a repo and a local copy is that a repo has no work directory it only has the history.