Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Will adding an open source license to my project apply to the entire project revision history? [closed]

Assume I own some open source project with no license information. Furthermore, assume nobody has contributed publicly yet and so I own the project's source code and copyright.

  1. Say the source code is already hosted online. If I decide to give it an open source license by uploading the associated COPYING document to the repository and adjusting the source files accordingly, will the previous versions of the project become licensed as well? Or will the current and future versions be protected while previous versions fall under public domain?

  2. Alternatively, say I start a new project using a DVCS (e.g. Mercurial) on my local machine. I commit all my changes (locally) and then add license information in a later changeset. If I were to host the project/repository, will the entire history be licensed or only the versions following that changeset?

In (2), the project is initially not hosted so this does not seem like a problem. But once it's uploaded, some of the project's history will not include the license information, making the result look almost exactly like (1).

I ask because Google Code allows you to select a license on a new project, even if you intend to import the repository afterward, making licensing seem somewhat external to the actual source code, whereas bitbucket.org does not.

like image 541
Joe Avatar asked Jan 06 '10 23:01

Joe


People also ask

Can I change the license of my project?

Open source licenses are generally irrevocable. Once you publish something under a license, you can relicense future versions but cannot retroactively change the license.

What license should I use for my open source project?

FreeBSD / BSD 2-Clause License FreeBSD License or Simplified BSD License or BSD 2-Clause License is one of the popular licenses for OpenSource projects. It's super simple & quite similar to MIT.

Can you make an open source project closed source?

Yes, it is possible to make an open source project into a closed source project. The copyright holder can change the license of a project at any time, or cease to distribute source code of new releases. New releases can therefore be made closed source.


2 Answers

If you want the license to apply to the whole history, just say so in the license file, something like 'This file was added at revision x, but you may consider that the license applies to all revisions prior to x as well'.

You can view it as the license declaring what it covers... legalbol is code, scoping can be made explicit if you want.

like image 191
Andrew McGregor Avatar answered Nov 16 '22 02:11

Andrew McGregor


As long as you're not using any GPL libraries then what you do with your code is up to you. You can say that you code is retroactively GPL or you can say what version is GPL and what version is BSD and what version is Apache license. You can even offer dual license: use GPL or pay me $100 to use BSD (kind of like what the Qt guys did before they decided to offer LGPL).

Now, if you are using a GPL licensed library then your code is already GPL.

like image 33
slebetman Avatar answered Nov 16 '22 03:11

slebetman