问题
I have a new project in github. It is public. However I don't remember being asked what license to give it.
In google code / sourceforge before starting a new repository I recall being asked to commit to an open source license.
Of course there is a difference between public and open source. Can I say, for example, you are free to download, read, and study the code but you have to pay $$$ for running it? Or you cannot fork it? Or whatever non-open-source-compatible-clause-here?
回答1:
I have a new project in github. It is public. However I don't remember being asked what license to give it.
Code hosted at GitHub without any explicit licence mostly falls under the "All rights reserved" clause (cf. InfoWorld post on this subject). Below a relevant excerpt of the item:
"What are the terms under which the code in all those GitHub projects is made available? A precise answer depends on your jurisdiction and would require a lawyer's advice, but it's likely that the answer for most people is "all rights reserved" -- in other words, you have no rights to use the code. GitHub does not include any useful default licensing terms in its terms of service; the most likely scenario is that any use of the copyrighted material in one of those no-license projects is formally a breach of copyright. Under copyright law, code without a license cannot be legally shared, as the default for copyrighted materials is that all rights are reserved."
However, in order to clearly state your intent, maybe would it be better to clearly add a licence in your repo (as a separate text file (eg. COPYING.txt
) and as part of the README.txt
file.
Of course there is a difference between public and open source. Can I say, for example, you are free to download, read, and study the code but you have to pay $$$ for running it?
You could get some inspiration from the RavenDb project dual licencing mode which limits the usage as follows:
- Commercial editions can be used in closed source environment and are available under a subscription or perpetual pricing model. Prices are per instance. As long as the subscription is valid, new releases are included in it automatically.
- You can use Raven for free, if your project is Open Source.
Provided you accept Pull Requests, it may be a good idea to make sure contributors abide to the licencing mode and make them explicitly accept the Intellectual Property related terms and the transfer of the ownership of the copyright. As an example, you can refer to the RavenDb contributing guide.
回答2:
I would suggest moving your project to bitbucket (that also supports git and mercurial).
There you can have private repositories for free. Having the code of your commercial project right out in the public, is not a good practice, even if you have the proper licences. Just my two pennies.
回答3:
I have a new project in github. It is public. However I don't remember being asked what license to give it.
Well, you remember well, Github does not ask you that.
In google code / sourceforge before starting a new repository I recall being asked to commit to an open source license.
Yes, they require that for documentation. However, those are not the same as Github.
Of course there is a difference between public and open source. Can I say, for example, you are free to download, read, and study the code but you have to pay $$$ for running it? Or you cannot fork it? Or whatever non-open-source-compatible-clause-here?
From what I know, Github only requires you (for the public and 0$ repositories) to have it "open source" (with no further definition of the meaning of those two words) being able to "fork" (with no further definition which rights are passed with the fork). If you write Github support an Email, they will just tell you something like that with all the details.
As long as you are the author and you take care to fullfill those very loose terms of Github itself, you are free to do whatever you want and you can define rules under which your software can be used. For example you can say it's open source in the meaning that the source is open and can be read and that the code can be forked but when forked not rights at all are passed with the forked copy (which means that those who have forked a copy have not licensed any rights with their fork - basically can not use it) but you can not disallow forking. E.g. last time I asked them, all they wrote to me was "then you should better make this visible" however there is no requirement.
Keep in mind that many others won't share this same view of yours, so better talk about this with a lawyer on your behalf so just for the cases where a different opinions, you know for the matter of the law what is just for you and what not.
See as well:
- Can I use the code in a Github project which does not have a license specified?
回答4:
It's worth bearing in mind, from a person with a legal background and I'm aware this is an old question that I'm chirping in on - but in many jurisdictions to have valid 'copyright' for example, you have to enforce your copyright - almost impossible to do when you have your source public.
It may or may not be relevant but it is nonetheless a valid point to consider when looking at GitHub for hosting code which does not carry an open source license.
来源:https://stackoverflow.com/questions/16933385/can-my-public-github-project-not-be-open-source