Hacker News new | ask | show | jobs
by icebraining 5378 days ago
But what's the point of having those on Github anyway? GH is great for teams or for sharing your code with 'the community', but I don't see what it buys you for private, single developer projects over a directory in your drive(s).
3 comments

Code availability from anywhere without having to manage your own repo server.

Even for a single dev it might be worth it to be able to check out to your normal dev workstation, your laptop, and even on a totally random pc when the need arises. It also allows you to checkup on things through the web when a pc to checkout on isn't available.

A git server (at least on a personal scope) requires close to zero management. Fire up an Ubuntu box on Linode or such, `sudo apt-get install git`, boom, there's your server. A git server is nothing more than "filesystem + SSH + git".

Not to say GitHub doesn't make it even more convenient, but the DIY option isn't exactly difficult either.

Gitosis also takes like all of 5 minutes to set up and then you've got repositories that you can collaborate on and manage permissions between projects.

http://scie.nti.st/2007/11/14/hosting-git-repositories-the-e...

I set up our repo hosting using Gitosis a few years back and haven't had to think about it since. Accounts are also managed via a special repo so even that is done over git.

You could also put your collection of repositories on your Dropbox and clone from / push to there.

Gitolite is a better tool, with more options. It's easier to manage who gets access to what as well with gitolite.
I do this now. It works. It just sucks. Rather than have everything in one consolidated location, I have to recall where I put things. It seems like a small thing, and in the grand scheme of things it is, but it's really annoying. And if I'm already going to manage my own server for private repos, then why bother with a paid GitHub account?
I agree. I have a 40 Euro per month server solely for things like a MediaWiki, backup storage and git repositories. Granted, it takes a little bit of Linux-administration, but that's a useful skill anyway.

And creating a new git repo just takes 15 seconds:

  cd /opt/git
  mkdir reponame.git
  cd reponame.git
  git init --bare
  cd ..
  chown -R username:username reponame.git
That's it. Having said that Github is obviously great (nay, awesome) for larger teams (comment features etc.) and, of course, open-source projects.
And for a single dev who actually has a need to be concerned about all of these things, $200/month doesn't seem unreasonable to have someone else manage it all for you.

The alternative is of course to run your own repo server as you said, which with git can be as simple as just a directory you can access via SSH.

Yeah, I guess I assume any developer has some online "drive", be it Dropbox, a NAS or just some web based storage. That's all you really need for a git repository.
I've been running my own SVN server for nigh-on 10 years and it requires very little management, if any at all. I imagine git is similar.
You can use Dropbox as Git server if you wan't.
Please don't ever do this, unless you wish to invite Dropbox's file syncing to destroy your repo.

(See http://stackoverflow.com/questions/1964347/mercurial-and-i-g... and http://stackoverflow.com/questions/1960799/using-gitdropbox-... )

The top-rated answer there warmly recommends using Git on top of DB.
Yes. I'm sure it works for the common case. It's the edge-case problems outlined in the answers below it that worry me more.

Going out on a limb: I'd assume that if you care enough about your data to version it in a git repo, then I'd also assume that you'd not enjoy it exploding because of a sync problem between two computers.

> wan't

In what implementation of the English language would that contraction make any sort of sense?

Don't you have even an old spare computer to put aisde in the attic/closet for your personal ssh/web/git serving needs?
One side-affect of having your projects on Github is that they are now backed up and you won't lose all your work if you drop your laptop or your drive goes kaboom.
I love using GitHub Issues even as a single dev. I give clients read access to a repo and they can log feature requests or bugs they find. As a single dev I'm less inclined to manage and backup a server for my repos. Also, I try to delete projects I'm not actively working on from my drive so I'm less likely to tinker with stuff when I should be working on paying projects. Just my $0.02.