4 ms·
"Doing this is cheaper than paying GitHub, and it will give you the satisfaction of being a True Hacker." Or I could work on problems that really matter and le
by md_ 10y ago
"Doing this is cheaper than paying GitHub, and it will give you the satisfaction of being a True Hacker."
Or I could work on problems that really matter and leave the sysadmin job to someone who gets paid to do it. ;)
More seriously, when I was in college, I spent a lot of time doing things like running my own mailserver, selfhosting various projects, etc. I learned a lot. But in the Real World, I don't want to be responsible for more than I have to be; off the shelf products are just better for me, most of the time.
The fact that Bitbucket and Github will pay a guy to run a git server for me is amazing (even if it is evidence of some sort of irrational enthusiasm on part of VC firms). Why would I not want to take advantage?
- hamburglar 10y agoExcept running a git server is little more than having a place to store a git repo and giving ssh access to it. There's really no maintenance if you already have the server. What github et al provide isn't repo hosting so much as fancy UI tools on top of that. Edit: seriously, I wonder how many people who just automatically go to github have ever bothered to try the simple act of creating a git remote on a file server on their own network, or even just to a different host. It's really easy, and it really underscores how simple it is to have your repo distributed without any 3rd party infrastructure. Once you see that, you see that putting a copy on a shell account on your hosted VM is dirt simple and requires almost no administrative burden.
- sheraz 10y agoGithub, bitbucket, gitlab, et. al are more than a git server. They are code review, community management, issue tracking, and the literally hundreds of integrations for all parts of the software development lifecycle. Anyone with more than a personal pet-project will understand the value created by these services the moment they have to stand up the supporting items that make SDLC possible.
- amorphid 10y agoI did, because I wanted to have the experience of understanding how a Git server works. But I still like using GitHub. Their web UI is useful, and I don't have to maintain a server.
- gurkendoktor 10y agoThe problem (for me) is that I have no clue how to effectively manage UNIX users. I don't want my git user to have access to the full filesystem, and maybe I want to add another user for a friend who can only see game.git but not taxes.git, etc. Using SSH on a local server works for some use cases (and I do use it) but it doesn't scale at all.
- stiGGG 10y agoBut the fancy UI tools are the thing the people want. In real world after setting up your ssh on your fileserver, you are ending up in installing gitlab, etc which includes maintaining a database, webserver, ssl certs, etc
- hamburglar 10y agoWell, I've been pushing my personal code to bare git repos on a rackspace VM for years and I never felt the urge to install gitlab or any of that other fancy stuff, so ... I guess I'm strange? To me, it's very nice to just keep it simple.
- ethomson 10y agoOn the contrary, there's a ton of maintenance, and the hosting providers like GitHub and Microsoft pay teams of people to deal with the infrastructure. (I've worked on both.) This involves not just the physical infrastructure like the servers, though of course there's that, but also maintaining the bits on disk. Your repository will get duplicated across multiple disks on multiple machines, perhaps in different availability zones, and then of course they're backed up to yet another location. So what companies like GitHub and Microsoft provide is - yes - the fancy tools on top but also teams of professionals ensuring that your repositories are available quickly.
- HelloNurse 10y agoGitHub etc. need "a ton of maintenance" because of the "fancy tools", which are an unusually complex and sophisticated constantly evolving web application with many users. A private source repository is far less demanding: it's almost never upgraded, and for system administrators it's just another server to keep running and another file system to back up.
- ethomson 10y agoI'm not talking about the fancy tools. I'm talking about just serving Git repositories, not about web applications. GitHub is distributing your Git repository across multiple servers in multiple racks in real time for reliability and availability and is the world's largest Git repository hosting provider. Some nice conference talks discuss this, like from Git Merge: https://www.youtube.com/watch?v=f7ecUqHxD7o https://www.youtube.com/watch?v=f7ecUqHxD7o and GitHub Universe: https://www.youtube.com/watch?v=DY0yNRNkYb0 https://www.youtube.com/watch?v=DY0yNRNkYb0 Visual Studio Team Services is hosting your Git repository across Azure, and is hosting the world's largest Git repositories. https://arstechnica.co.uk/information-technology/2017/02/microsoft-hosts-the-windows-source-in-a-monstrous-300gb-git-repository/ https://arstechnica.co.uk/information-technology/2017/02/mic... I have my own Git server as well, and I agree that its maintenance isn't very demanding. But I'm not putting production bits on it. My open source repositories go to GitHub and my private repositories go to VSTS - they're providing a level of service that I simply can't match by myself.
- HelloNurse 10y agoIn the "real world" people like to keep their private source code private, and they run version control servers on their own LAN with tape backups or the like. I personally set up a remote-access git repository on Windows, with Windows domain authentication (Apache+mod_ldap+mod_authnz_ldap), and it wasn't any more difficult than any other Apache installation; a more sensible platform would require a negligible effort.