copyright intellectual-property licensing
Which license can protect a project&#39;s owner and give him ownership over volunteer contributions?
<p>I am the owner of a private GitHub repo for a game project. We are a team of 5, I wrote 98% of the code and made several commits, other users have also added their own code to the project and its been merged into the main branch.</p>
<p>Parts of the project might be released commercially at a later date (not sure yet), maybe on Steam.</p>
<p>There is no license, which means it's under All Rights Reserved (according to Github). Does that mean that everyone still &quot;owns&quot; their own code? Since I am the owner of the repo, what rights do I have over the contributions of code of others? Or is all the code others wrote still theirs under &quot;All Rights Reserved&quot;?</p>
<p>That's in case of code, what about when a team member contributes models, audio files, etc?</p>
<p>I dont want to get sued by someone because I used their proprietary code. So I think I need a license that gives me ownership over the contributions of others. In this case all team members are inexperienced and have agreed to work as volunteers, with full accreditation if the project is ever published.</p>
<p>So what would be the <em>de facto</em> best license for me to use here?</p>
<p>Appreciate any help. I looked all over Stack/Quora and forums, but couldn't find any conclusive answer.</p>

<p>Yes, a work with no license is All Rights Reserved, reserved meaning the creator of the work. Who is the creator of the work ? <em>Everyone</em> who contributed it, unanimously. Yes.</p>
<p>If people contributed any copyrightable part of your work, in theory you cannot add any license or grant any right to use/reproduce/whatever the work without their unanimous agreement. That's very cumbersome, and almost nobody really does that, but it's what the law is.</p>
<p>Big serious companies and repos require contributors to waive their rights on the code they contribute, by agreeing to a contributor's agreement. For example, python/cpython requires you to give your contribs a license allowing the python org to do essentially what they want with it, even though you retain copyright over them.</p>
<p>If your project is not so serious, I suggest it should be enough to make the license clear, and that by contributing people are agreeing to place their contribution's code under the license. If it's a free license, that's all you need.</p>

<p>A common solution to this problem is to not accept pull requests unless the author signed a <a href="https://en.wikipedia.org/wiki/Contributor_License_Agreement" rel="noreferrer">contributor license agreement</a> (CLA).</p>
<p>The exact wordings of CLAs differ, but they essentially come in two flavors:</p>
<ul>
<li>The contributor transfers the copyright to the project. That means the project maintainer can do pretty much anything they want with it.</li>
<li>A license grant which gives the project the right to incorporate the code into their project, change it and redistribute the code under certain license conditions, but copyright stays with the original contributor.</li>
</ul>
<p>Without the CLAs, your project is in a difficult legal limbo. It's not clear what the contributors agreed to. I do not know how you communicated with them, but it is very well possible that you and the contributors have different ideas about your intentions. Some might not be aware of the fact that you want to monetize their work. Some might be aware, but expect to get paid in that situation. If that's the case, then you might receive scary letters from their lawyers as soon as you put your game on Steam.</p>
<p>Would they sue? Could they win a lawsuit? Without any written documentation of what you <em>actually</em> agreed on, that's very difficult to predict. But even if you <em>could</em> convince the court that the contributor should have been aware that they are doing volunteer contributions to a commercial project and that no reasonable person would have expected payment under these circumstances, such lawsuits are still very annoying. They would demand your time and attention during your launch month, the most stressful phase of every game project. They would require that you pay for legal costs upfront. Distorted facts about the legal dispute could leak to the public, make you look like the bad guy in the public court of opinion and force you to clean up a PR disaster.</p>
<p>And this whole mess is easy to avoid: Just have them sign CLAs.</p>

<h2>None</h2>
<p>You can not become <strong>owner</strong> of any user contributions without all users contributing signing a separate right transfer - For example in a contributor agreement or afterward in a separate right's transfer.</p>
<h2>Unless you already have a specific license, you need to acquire it</h2>
<p>When the user made the contribution, they did it under no specified license. This means you don't have any ownership of their contribution, they have all rights.</p>
<p>This doesn't stop you from requesting them to sign a rights transfer or license to the contributions. If you can reach the contributors, this actually can be quite easy.</p>
<p>If you can't reach the contributors, it might be prudent to reverse any such contributions until the rights situation is clarified.</p>
<h2>You can gain an automatic license only if such was specified before the contribution.</h2>
<p>The best you can get is each contribution granting you an automatic usage license by offering a contribution, possibly even an exclusive one. However, such an automatic-contribution-license needs to be specified that way before the contribution was made: Licenses can not be gained retroactively this way.</p>

<p>I just want to clarify something (which I hope someone will correct me on if I'm off base): the <em>LICENSE</em> is not the correct mechanism to enforce this.  A license, for a piece of software like this, only asserts what <strong>a user can do with your code when they download it</strong>.</p>
<p>It can be either a blanket license given in a file (like most open-source projects do), or a license agreed to explicitly by both parties (owner and customer), but in both cases, by the time someone's using the code, it's too late to involve questions of who the owner (generally, the copyright owner) of the code is.</p>
<p>As mentioned in other answers, a <strong>Contributor License Agreement</strong> is the correct solution for this - it just formalizes the notion that &quot;when people gave you code, it became yours&quot;, which is basically what everyone expects from the notion of &quot;giving&quot; anyway.  Depending on your level of comfort, you could have all contributors literally sign something (which in many cases might actually scare away contributors by either being too much work or too confusing), or just ensure that all contributors see a notice like &quot;All contributions become the property of blah blah blah&quot; when they make a contribution.</p>
<p>Once that's ironed out, you can take the next step of licensing the project the way you see best fit.</p>
