Saturday, September 20, 2014

Github vs Google Code

This is the question just take stumbled me every time I am about start a coding project.

Which repository to use among these two I should use? I know that there also a big repositories like Codeplex which is offering free project hosting but because it is own by evil software corporation Microsoft (whose OS I am using to post this blog) we will omit that option out and in the end you will know why. Sourcefroge is also out, because it shows annoying adds and if your product become popular it (Sourceforge) will bundle "shit search engine" browser tool bar with your product.




Code repository history is almost old as computers programs, but I will try to cover it from mid ages till now in 10 short points:


  1. One upon a time there was a evil software repository product called Concurrent Version System a.k.a CVS
  2. Some developers though CVS is evil and idiotic and wrote a free system which more or less did the same thing for free, and called Subversion a.k.a SVN.
  3. People loved SVN, started using it, made it a world class standard repository. 
  4. Then the Linux creator Linus Trivolt, who was happily using BitBucket, a node base peer to peer but paid repository, which account was given to him and his fellow developers for free to develop Linux kernel.
  5. Linus and his fellow devs were kicked out of their free subscription because one of his "morally correct fellow developer" tried to reverse engineer bit bucket. 
  6. Crushed by this kicking out Linus swear revenge, and wrote GIT, in two weeks time, which was pretty much like BitBuckets (but in his words, "BETTER")
  7. People around the go crazy about this UI less Linus Trivolt bi product and started using it.
  8. It started to gained popularity, then Tom Preston, Chris Wanstarth and PJ Hyett created  Github and created a UI tool utility for git.
  9. People went crazy because now they can use a code created by Linus Trivolt. Which I think they though make them more popular in their nerdy circle. 
  10. Meanwhile Google code (which was cooler for sometime) which was only offering SVN, CVS and a unfortunate lost it coolness and people migrated their projects to github
I know I have written a too little and too partial history of code repository, concentrating only on two products, but in my defence I was only considering historically important open source software repository, and given that I have only written 10 points, I think it is ok.

So, we deduced Git is cool (in nerdy circles) and Github offers it. But recently in chase to become cool again Google also started supporting the GIT repository. But this change was little too late as many projects we loved are now already migrated to Github, people already love it and use it, then why use google code ? I have five strong reasons:
  1. Git, all though a great innovation and well though product, but if you are beginner and just starting with only your self or friends Git (software) is bit of a overkill. 
  2. Git over complicated, has a learning graph just to get start with, Its UI clients are maturing, but still has many things to catch up, try considering the other software repository SVN, and google supports it. 
  3. Github, by definition only supports Git and if you coming trough some different environment you have to learn Git.
  4. If you have missed it above, Google supports Git now, so you can choose Goolge code and still be cooler (in your nerdy circle). 
  5. Now there are good third party open source Git tools are available, like tortoise git, hence github web UI, and windows base tool is no longer that important. 

But things to consider.

Google only support open source repo, and you can't delete your project (only raise request for deletion and its upto google whether they want to delete it or not).

You can clone your github repository to Google code or CodePlex (if you like evil), and vice-versa and do push and pull in both (learn Git) hence there no wrong choosing of repository here, if you are considering your code to be open source for ever. 






Note: I am personally confused which repository to use to start a small project, Git seems like nerdy way to go ahead, I have watched 2 hours or learning material on net and still no clue on it, Git (not git hub) is like E=MC2, it breaks the rules how we are used to manage repositories till now, but again seems like a over kill when your project scale is relatively small.







1 comment:

  1. Very easy to learn the basic work with git. There is a good book about git - Pro Git (http://git-scm.com/book). To get started, simply read the first three chapters.
    I moved my project from Google Code to GitHub. Because Google Code is no longer updated and Google consistently kills their former popular projects.
    Here is a helpful post about the move: evennia.blogspot.ru/2014/02/moving-from-google-code-to-github.html
    So, I think the question of choosing Google Code or GitHub is no longer relevant.

    ReplyDelete

Official Google music desktop app

This Article does not make any sense now as google discontinued the Google music app and there is an official youtube music web app Google ...