It’s not, though. Git is a means of distributing content, not the content itself. The thing analogous to Pornhub’s porn on GitHub is the source code in the repos hosted there, not Git itself.
what's the difference?
Submitted 11 months ago by sunnie@sopuli.xyz to programmer_humor@programming.dev
https://sopuli.xyz/pictrs/image/b5e33b2f-47e0-4da0-8e39-2664624c4042.jpeg
Comments
purelynonfunctional@programming.dev 11 months ago
merc@sh.itjust.works 11 months ago
Git is a DVCS. GitHub is a place where DVCS repositories are hosted. There are many other places where DVCS repositories can be hosted, but GitHub is the most famous one… Porn is a type of content. PornHub is a place where porn is hosted. There are many other places where porn can be hosted, but PornHub is the most famous one. It’s a pretty good analogy.
dan@upvote.au 11 months ago
There are many other places where DVCS repositories can be hosted
I mean… Everyone that’s cloned the repo has a full copy of it. You could clone it directly off someone else if you wanted to.
docAvid@midwest.social 11 months ago
But it’s a categorical error. The analogy is about “git”, not “git repositories” or “DVCS repositories”.
CanadaPlus@futurology.today 11 months ago
If only there was a website called “StreamHub” or something.
purelynonfunctional@programming.dev 11 months ago
Depends on to whom. If you’re explaining to your grandma, a small child, or a co-worker, you probably don’t want an explanation that relies on reference to a porn site.
And if you’re explaining to a novice developer or to an IT person who sometimes might have to work with Git, they need an explanation that leaves them with a basic understanding of the kinds of things Git and GitHub are (namely, VCSes and SCM forges, respectively), not just an inkling that GitHub is not unique in being ‘a place to host (some?) Git, whatever that is’.
So if you don’t mind that it suggests ‘GitHub is for uploading Git(s)’, it’s an okay way to teach ‘the difference between Git and GitHub’ to non-technical, non-elderly adults who don’t really need to know what Git is (and don’t work with you or study under you).
That’s an explanation of pretty damn narrow usefulness, to put it generously.
spudwart@spudwart.com 11 months ago
Grub and GrubHub
nxdefiant@startrek.website 11 months ago
Using food as the analogy:
Food…Code Kitchen…Dev Environment (IDE, PC, etc) Serving…Deploying
ok good so far
When I’m done with code I’m not going to deploy yet I commit and store it on a branch in git.
When I’m done making food that I’m not going to serve yet, I store it in a fridge or pantry.
When I need external code, I grab it from GitHub. When I need ingredients, I grab them from the grocery store.
So I think Food Storage, is the closest analog to git. I have local storage (pantry, fridge) that I can use to store food I have acquired.
Which would mean the grocery store is the closest analogy, but not a restaurant. Or maybe a grocery store with a restaurant.
cobra89@beehaw.org 11 months ago
Git = bittorrent GitHub = the pirate bay Code = content
vinhill@feddit.de 11 months ago
Though OPs example is easier for the general population to understand.
CmdrKeen@lemmy.today 11 months ago
Yes, but mostly because the general population likely isn’t super familiar with Bittorrent and PirateBay.
A better, yet similarly correct explanation would be to say GitHub is to Git what GMail is to email.
This also doesn’t confuse protocol and content, and it doesn’t require knowledge of piracy.
4onen@lemmy.world 11 months ago
Git is a program your computer runs to have a single folder have source control. It does all the hashing and commit chaining that you’re used to, branches, that sort of thing.
But if you want it to be on more than one computer, you need to do this complicated “Bare” repository setup on a server computer to do the “git push” stuff you’re used to.
Most people, being too lazy to learn bare repositories and the general sysadmin necessary to host a git server themselves, instead just use Microsoft’s Github which is a web interface for the server use of git the program.
Microsoft then proceeded with their classic mantra of “Embrace, Extend, Extinguish” and started slapping on more and more features that are incompatible with any other git hosting service: actions, CI, their web VSCode instances, etc. That’s all in GitHub too. But it’s all just web interface for git the open source program, at the end of the day.
xmunk@sh.itjust.works 11 months ago
I like shitting on M$FT as much as the next bloke but if you believe Github started being evil when Microsoft entered the picture then your memory is pretty awful.
From it’s inception github pushed proprietary tagging and issue numbers that have no meaning outside their platform and a difficult export process to trap projects - especially commercial ones - on their platform.
Phen@lemmy.eco.br 11 months ago
I remember moving a project from github to gitlab years ago and the process to move all the non-git data from github was just as easy as moving the git repo itself. Thanks to gitlab’s efforts perhaps, but I didn’t expect github to have made it difficult for them based on the experience I ended up having.
4onen@lemmy.world 11 months ago
I was being diplomatic because I was uncertain how people felt about the issue and PR tracking, considering how Bitbucket and GitLab replicate it. Felt simpler to focus on the since-M$ft egregious steps.
rtxn@lemmy.world 11 months ago
GitHub was independent from Microsoft for a long time, and was only acquired in 2018.
Archr@lemmy.world 11 months ago
Just a few comments on this. Most people aren’t “lazy”, they just understand that the effort to run a bare repository is greater than basically any other solution. Also your incompatible features list implies that other git repo sites (gitlab, codecommit, bitbucket, etc) don’t have their own form of proprietary stuff that you have to learn. In fact the newest version of gitlab actually changes their web ide into vscode web, because of the obvious, it is much better than their old ide.
agent_flounder@lemmy.world 11 months ago
That…isn’t quite right.
Git is a distributed version control system for software development^1.
Version control allows you to manage code versions and changes to code. You take snapshots, so to speak, of every change you make.
Distributed, in this context, means multiple developers can write code on each of their development computers and merge the changes, usually to a centralized git server.
GitHub runs a web-based git server at GitHub.org so teams can store their code in a central location on the internet.
- Ok, technically, even though It’s often used for software source code, it can be used for any set of files and directories.
kernelle@0d.gs 11 months ago
If you read it as “a website providing a service, but that service is also available elsewhere” the analogy makes perfect sense.
Rodeo@lemmy.ca 11 months ago
Ok, now explain the part you think is not right.
agent_flounder@lemmy.world 11 months ago
Git is a tool. GitHub is one implementation of a git server. Git is used to manage source code. GitHub hosts / manages source code.
Porn is content. Pornhub is one service that hosts content. Porn is not a tool. Git isn’t content. Source code is content.
So porn isn’t really analogous to git.
Maybe a better analogy would be… Git is to GitHub as outlook mail client is to outlook server–or Gmail app to Gmail server.
Rootiest@lemmy.world 11 months ago
GitHub runs a web-based git server at GitHub.org so teams can store their code in a central location on the internet.
Wait… it’s GitHub.org?
I always assumed it was GitHub.com…
WindowsEnjoyer@sh.itjust.works 11 months ago
In Lemmy people are not aware that GitHub is not just git server with lots of code. :)
merc@sh.itjust.works 11 months ago
A key difference:
If you rely too much on PornHub, you’re never going to get fucked.
If you rely too much on GitHub, you’re eventually going to get fucked.