Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have some projects that are in a very early development state. They are nowhere nearing completion but I do host them (as public repos) on GitHub because:

  • I have multiple computers and I want access to my code everywhere
  • I want a backup for my code
  • I want it to be easy if someone wants to collaborate in some way
  • I use GitHub Issues as a poor man's project management software

Is it OK to publish a project on GitHub even when it is very early in the development? I am a bit concerned about someone to come by and say OMG this is total BS, this code is so bad! while looking at unpolished/still in development/not tested code.

What are your practices when you start new public projects? Do you wait until you have something substantial to show or you create a bare repo directly on GitHub and start from there?

I used GitHub throughout this post but this applies to every code hosting service out there.

share|improve this question
Does GitHub give you the option to restric access? – FrustratedWithFormsDesigner Oct 23 '12 at 19:05
@FrustratedWithFormsDesigner Only for paid accounts. Though nobody can push directly to your repo. For this they have to create a pull request and I have to approve it and merge it myself. – marco-fiset Oct 23 '12 at 19:08
Ah. Paid accounts are pretty pricey? – FrustratedWithFormsDesigner Oct 23 '12 at 19:09
Could use Bitbucket (Free) and keep it private repo then make it public once you feel it is ok to be seen. – Rig Oct 23 '12 at 19:12
@FrustratedWithFormsDesigner Not that much. From 7$/month. But I'm pretty sure you knew that already, didn't you? :P You only wanted me to realise that I could just pay for it and shut up. Just kidding by the way :P – marco-fiset Oct 23 '12 at 19:12
up vote 35 down vote accepted

Of course it is OK: it is hard to imagine that over 4,098,118 projects currently hosted on GitHub would all be 100% great and useful! You are not forcing anyone to use your code or even to look at it. If you host the project primarily for yourself, the quality of your code is of concern to you, and nobody else.

You listed all the right reasons to host your project - backups, universal access, and possibility of collaboration with others are great reasons to start hosting as early as possible.

share|improve this answer

Push whatever you want as early as possible. No one's going to look at it unless you publicise it and it's interesting.

If you're really worried, some free code hosting services offer private repositories.

share|improve this answer
One such service with free private repositories is Bit Bucket. – davidhaskins Oct 23 '12 at 20:19

You could use Bitbucket which has most of the project management features, all of the cloud-based DCVS features and it has free private repositories so you can keep it on the DL.

share|improve this answer

Sure you can publish it in an early development - But mark it as pre-alpha, later set alpha, beta...

share|improve this answer
There's really no point to keeping track of that until you're actually planning to do a release (and even then, only if you're big enough that anyone would care). – Brendan Long Oct 24 '12 at 2:33

No one is just going to stumble on your project. And if they did they aren't going to go blabbing all over the internet about it.

share|improve this answer

I would say that it depends upon whether you think the code is incomplete or just plain bad. If bad, you may want to consider whether you are now or might soon be looking for a new position; and whether or not the code is discoverable if a potential employer is researching you.

OTOH, even bad code might be considered a bonus, particulaly if it is commented as such.

My advice: decide with care.

share|improve this answer

Sure you can push whatever you want, but still it is better when you push a more pre beta solution to GitHub.

You can easily use DropBox for storing you GitHub projects and the good part is that you'll have access to them on any computer.

share|improve this answer
I strongly recommend against this. From personal experience of doing so I found that I was getting a big mess of altered and reverted files due to both systems trying to get them in synch. My approach is Dropbox for most stuff, 50GB plan and github for all code / version contolled files and ne'er the twain meetin' up. – Michael Durrant Oct 23 '12 at 23:57
I agree. Dropbox + git (especially the .git directory) do not mix. – asmeurer Oct 25 '12 at 6:11

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.