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

There's an open-source project that I'm interested in and use regularly. It's licensed under the Apache License 2.0 and it has basically no activity any more. It's hosted on Google Code and I'm interested in continuing it's development. I'm new to the open-source process and I'm trying to figure out the appropriate way to go about this. Can I just check it out and push it to github so I can continue it's development in the open there? Should I contact the project "owner" first? Also, do I leave all the author information at the top of the classes, etc even though I'm going to be making changes..(I'm assuming the answer is yes)?

Also, how do I practically adhere to the license requirement of "all modifications are clearly marked as being the work of the modifier"? Do I place a comment by every change I make?

Any guidance on what's the normal course/standard here would be greatly appreciated?

share|improve this question

migrated from Dec 18 '11 at 4:46

This question came from our site for professional and enthusiast programmers.

Does the project still have an active community? – Tim Post Dec 18 '11 at 5:26
The Cathedral and the Bazaar – Yam Marcovic Dec 18 '11 at 15:52
Contact Apache, they have formal, sensible procedures for just about everything. – James Anderson Apr 11 '12 at 1:38
up vote 28 down vote accepted

Recently, I took over an open-source project. The steps that I followed are:

  1. Contact the original author
  2. Let him/her know my intentions
  3. Get acknowledged by him/her (you will either get the rights to the original repository or you will get to clone it)
  4. Retain original authorship (will be adding myself when I make further changes)

By "Retain original authorship"... I mean to credit the original author above myself in all cases as it is originally his/her work.

share|improve this answer
What do you mean by "Retain original authorship (will be adding myself when I make further changes)"? – LuxuryMode Dec 18 '11 at 21:19
I meant to credit the original author above myself in all cases as it is originally his/her work. – Alan Haggai Alavi Dec 19 '11 at 3:12
Mark Booth: You are right. Thanks for editing my answer. :-) – Alan Haggai Alavi Dec 19 '11 at 12:14

You should fork the project, perhaps into GitHub.

Alternatively, you can try to contact the original author.

share|improve this answer
Thanks a lot. I emailed the original author. Just wondering, is there any reason I HAVE to contact him or is it just common courtesy? In terms of the license, I'm free to do what I want as long as I adhere to it, right? Also, I spoke too soon. Apparently the original repo is in mercurial. Should I just use the hg-git mercurial plugin: ? – LuxuryMode Dec 18 '11 at 5:08
Common courtesy. As well, you may get control of things other than source code, such as domain names, trademarks, websites, mailing lists etc. – FigBug Dec 18 '11 at 7:34
It used to be that forks were considered bad. It was always seen as best to contact the original developer and be polite. The githib philosophy is that forks are cheap and everyone should fork. After all, under a DVCS, everything is a fork. Hence why you see these different views. – Andrew Dalke Dec 18 '11 at 17:01
Users hate forks, with a fork you will not get the project's former traction, user base, testers, compiled-versions contributors/porters. You generally want them. The way of the github (gihub-do) is best for interpreted stuff that's not aiming at binary distribution. And you still will lose very skilled people that simply prefer hg and don't care nigh about git. (yeah, religious wars, bleargh) – ZJR Dec 19 '11 at 14:54

There are many ways to go about doing this:

  1. Email the original "owner/author". Tell him about your intentions and how you can help development. Wait about 1 week. If there is no answer...
  2. Fork the repository. Out of respect, and to make sure you did nothing wrong (which you probably didn't) make clear reference to the original author.
  3. Get coding! You are now the the proud developer of Project ABC.
share|improve this answer

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.