GitHub has alternatives, but no replacement(lalitm.com) |
GitHub has alternatives, but no replacement(lalitm.com) |
Microsoft didn't purchase "Git", they purchased Github, the largest forge for Git. Git will continue to exist no matter what Microsoft does.
Also, I have absolutely no desire to ever, ever go back to SVN. When I was a junior engineer in my first software job, every Friday I would have to do The Merge, which would usually take most of the day because it would be spent solving all the merge conflicts. When I discovered the git-svn thing, it was like manna from heaven since it made a 4+ hour job take around ~45 minutes.
Did you confuse github with git? Indeed centralized git in Github is hardly any different from svn.
I used shorthand since I assumed people here were smart enough to assume that Microsoft buying Git would be understood as Github and not Git. It has proven to be a bad assumption.
There's no way everyone knew you're so smart.
Could be because everyone is so eager to assume I'm so dumb. ;) Regardless, the communication wasn't clear enough to convey the meaning, and that much is on me. I won't make that mistake again.
Man that's convenient. Why didn't I ever think of that genius way to resolve everything? Oh right, duh.
The article itself is explaining other platforms that work with Git, of which there are dozens. The `git` program itself isn't even developed on Github; it's developed on the kernel.org site [1]. Git != Github.
There's still development for SVN, Perforce still has plenty of paying customers, and Epic games themselves released a new version control a few weeks ago [2], so it's not like everyone assumes that version control is a "solved" problem. I'm honestly not sure what your point is.
I know SVN is still developed, but it is no longer really treated as a solution. That is why we are talking about Git and not Subversion.
Even before Git, there was Bitkeeper (which in some ways was arguably better), and that was what they used for the kernel until some drama with Larry McVoy happened. If there wasn't that drama, I think some kind of BitkeeperHub might have eventually happened.
Yes, Git overtook it, but I still don't really understand your point; it's not about Git, it's about a centralized forge.
What you aren't understanding is that all software development proceeds first by an underlying philosophy that evolves into other solutions inspired by the software that came before it. Git inspired the way Github works. You are trying to separate the two into distinct entities when they are really a flowing into one another.
Git, as a software version control platform, is supposed to be decentralized. It's designed to mimic the way that kernel development was done, with a lot of separate repos and email being used to merge in diff files.
If anything, Github really brings the subversion model to Git; Git primarily just has categorically better merging than SVN.
Ah, well that makes your position clearer. It does "sort of run contrary" but it also doesn't totally "break" what Git was trying to do. You still have your local copy but your ability to share it is centralized.
The next iteration for SVN MIGHT have been to have some kind of p2p website to share sources since it all ready had a centralized way to share the code. That's usually the way things bounce around. Higher centralization/decentralization/back to centralization. Git kind of arrested that evolutionary curve with a quasi-decentralization and a centralized sharing hybrid.
I wanted to leave GitHub but I'm still stuck there. What it would take for me to finally leave is some kind of federation of the social features, so I can port my stars over, see what others are working on, etc.
I’ve never stumbled upon a project by browsing GitHub casually. It’s always through finding the product first and trying to find the source code. If the source code is on some other website, I’ll probably figure it out, but it’s be a new muscle. Same with making an issue or a PR. The barrier is higher but not so high that I wouldn’t complain about a bug.
If anything, I find the social tools on GitHub like PR reviews, issue management, and notifications to be terrible for their job. Perfectly fine for a 1 person project and absolutely awful for a team.
I casually browse GitHub sometimes in the same way I do HN. I follow friends and colleagues and through the feed see what they're building and starring. I use global search to find tools and libraries that do what I want.
Sometimes, I come across a repo I like that's on say GitLab, but not GitHub. I quickly forget about such projects because they live in my bookmarks instead of my stars list.
>I find the social tools on GitHub like PR reviews, issue management, and notifications
I don't consider these social features, at least not in the way I'm talking about.
Same.
The “discoverability” of github is two things:
1) Recognition of the name; so if I cannot find the source code and I believe something to be open source I will google the product name with “github”.
2) I can reasonably expect everyone to have an account, so getting issues and PRs is less effort than with other forges.
But I’ve practically never discovered some new FOSS from githubs social features, and I actually look at my friends activity feeds.
Edit: here's one: https://forgefed.org/
I have found running GitHub mirrors for my own projects hosted on a private Forgejo instance works well enough, but the fracturing of GitHub will inevitably cause more difficulty in discovering others’ work. I suppose that opens opportunities up for either federation, or at least aggregation (Sourceforge has been doing that already, although I find its interface a little clunky).
Your stars list is browser bookmarks. You can see what others are doing even if you don't have accounts on their sites.
Not practically. That works up to a number like three. Are you really going to manually poll every account you care about?
For any given project, are there any forks / is this one a fork, and which ones are more recently/actively maintained, and what are the changes?
That network display where you can not only see all the forks in a timeline, but click on the individual commits is super handy.
Idk how you'd assemble that out of a federated system. It's probably possible but seems like it would require a lot of update traffic going in all directions between all nodes.
When I use the social platform, it is mostly as a read-only website. I am occasionally commenting, opening issues, PRs etc. The slowness and annoyances do not matter that much.
But I live in the team tool, where the annoyances and paper cuts are painful. Besides poor craftsmanship, there is often tension between the simpler design for social which sacrifices usability for pro use cases.
The social platform, which has huge network effects and is really hard to replace, is basically a loss leader for marketing the team product. I wonder if it would be viable for another company to create a team tool that stands on its own by outclassing Github like Linear outclasses Jira? That should be easier to replace. And Microsoft could keep running the social platform for the time being, where the adoption of alternatives is much slower and requires a much longer time frame.
Sourcehut is pretty niche but I like it a lot, and I don't really mind paying for things relative to the value they provide me.
Honestly I mostly just kind of wish that Git had proper support for binary files. I really need to play with that Lore VCS that Epic made.
If you are a small software company, presumably your code is your most important asset. You should be self-hosting that, then you can know exactly where it is and whether it's actually backed up and you can instantly talk to the person who is responsible for it.
All that isn't trivial to setup or maintain, so small folks especially will often find it cheaper and faster to pay M$ for all that.
i personally like how radicle.xyz managed that, where they manage issues/prs/user identities as git objects, so your entire project is self contained as git repository
It also allows for arbitrary levels of redundancy without passively saturating the network with ActivityPub traffic that no one looks at.
There needs to be some kind of shared infrastructure to make it easier for new contributors.
Im its creator, for full disclosure.
Than there is another view where the forge is where you go to get code others have written, and this is where GitHub shines. Because of the collective audit.
Agreed. All my customers are on Bitbucket. All the libraries used by their projects (Ruby, Python, JS) are on GitHub.
Bitbucket managed to be slow, annoying, and suffer more outages than github ever did. (Though perhaps that has changed, we're all aware that github has been struggling "recently".)
I tried it, years apart. It's forever experimental, and requires hosting for forever online repo anyway.
Forgejo is also mentioned, to me it's a valid alternative, without the community aspect.
>GitLab is capable, but it feels incredibly corporate, even more so than GitHub.3 Nor have I found it as good as GitHub at helping people stumble across projects and developers.
So it's not enough for an alternative to do everything you want ... it ALSO has to look "not incredibly corporate", and it has to bring millions of users to your project. Otherwise it's not viable.
And one of them is ease of discovery. GitHub make’s it really easy to do that. Same with contribution.
As far as looks go? That’s more subjective.
But the discovery and contributions piece is easy to prove, just look at how much traction a project gets when it’s hosted there versus elsewhere. Even really large projects that has many contributors have moved there like WebKit
What I'm saying is, you could pick almost any popular Internet site, craft your requirements to describe it exactly, and write a blog post lamenting how there's no alternative.
It doesn't mean there's really no alternative (for you or anyone else) ... it just means you're announcing to the world that you are a big fan of that site, and you personally will never be happy with any other site no matter what.
At the end of the day, this seems to be the author's ultimate decision factor. None of the alternatives--open-source, self-hosted, or commercial--have the social gravitational pull GitHub does. Popularity begets popularity.
GitHub was community first, then enterprise. MS hasn't managed to ruin that.
I recall some time in 2016 when they were regex replacing variable names in peoples repositories and pestering them if they didn’t accept the request.
They also worked very hard to change the default branch name for everyone, eventually compromising.
Github definitely has opinions, they might align with yours, for now.
Not a drop-in replacement for GitHub admittedly. Requires a bit more skills from the contributors. Which might be a fine gate, actually.
https://blog.tangled.org/seed/
Avoid.
Small Tech Discrimination.
The time to self-host over GitHub is now since they do not even have a CEO of GitHub anymore to help.
There are far worse companies than GitHub. People acting like this company is the Nazi regime are being ridiculous. GitHub (like most of tech) is rather progressive, and trivial differences in perspective should not be taken so seriously.
Of course, you can choose whichever service you'd like, for whatever reason you'd like, but acting like allies that agree with you on almost everything are enemies is no way to make progress. This is something that should not be high on the list of priorities.
I just think GitHub is a long way from Tammany Hall.
He aims for people being able to keep doing their work when whatever service they regularly use is down.
(Which also means that he is able to go on vacation.)
I ran Forejo for a bit, but I made the mistake of trying to use Jenkins for CI, which is very annoying for someone who really doesn't doesn't enjoy devops work.
Microsoft spends around $100m/year on free CI runners. Github is going to have to get a lot worse before most people give that up.
Also the post correctly mentions the importance of stacked PRs and how it's crazy that it has taken Github this long to get them. But it fails to mention that it's taking its competitors even longer. Gitlab doesn't have them. Forgejo has no plans. The only other forges I know that support them are Phabricator/Phorge (I think anyway; it's been a while), and Tangled, which tbh looks like it has blown its weirdness budget way too much to be a viable Github competitor.
VPS bills accumulate. I must have saved hundreds or thousands of dollars by not hosting this myself over the years.
Do you have more details about that?
What I've mixed together:
1) The "Alex" bot, which was opt-in and seemed to be everywhere. [0]
2) The "inclusive-coding-bot" which was not opt-in and just inserted itself into everything (which came out later). [1]
3) Github disabling a popular repository for using the word "Retard". [2]
Neither of the first two were actually endorsed by github, I just conflated them because of the "WebM for Retards" controversy and because they'd been very public about other inclusive things like not interviewing white people [3] or calling white women "some of the biggest barriers to progress are white women". [4]
[0]: https://github.com/get-alex/alex
[1]: https://github.com/inclusive-coding-bot
[2]: https://news.ycombinator.com/item?id=9966118
[3]: https://i.insider.com/56b3d2f12e526555008b505e?width=791
[4]: https://www.businessinsider.com/diversity-guru-discusses-whi...
> I think the fundamental misunderstanding we're having here is that people on the left side of the political spectrum believe the solution to all answers is more government control.
And every time I think about it for more than a second, I get mad that OpenID got eaten by OAuth.
I’m sure it was imperfect, but in theory it was easy to host and easy to implement. :(
Revocation was hard, but it's not like existing systems are solving that in practice either, and you can get a long way by just keeping short leases (which is fine because nothing needs to communicate with any third party).
If passkeys weren't so blatantly DRM-friendly I might like those, but they seem intentionally human-hostile for no good reason at all.
A few years, one hack, and a couple of apartment changes later, my server is behind on maintenance and lying somewhere waiting for me to set it up and update it. Meanwhile, my free action workflows just keep working. On a good day, at least - Microsoft’s SLA is like one 9 and it’s on the wrong side of the comma.
There definitely is value in "it's hosted somewhere that's not my house" though.
My girlfriend mentioned that this year is an election year in sweden, which made me realise how bad the propaganda was in 2016- but its all the same stuff.