77

The GitHub FAQ states (emphasis mine):

You're under no obligation to choose a license. It's your right not to include one with your code or project, but please be aware of the implications. Generally speaking, the absence of a license means that the default copyright laws apply. This means that you retain all rights to your source code and that nobody else may reproduce, distribute, or create derivative works from your work. This might not be what you intend.

Even if this is what you intend, if you publish your source code in a public repository on GitHub, you have accepted the Terms of Service which do allow other GitHub users some rights. Specifically, you allow others to view and fork your repository.

If you want to share your work with others, we strongly encourage you to include an open source license.

So, if a project is "all rights reserved", but then users have the "right to fork" it, what's the license of the new fork?

5
  • 16
    It might be a good idea to push github to clarify their ToS. Commented Jul 15, 2015 at 19:18
  • 3
    @CodesInChaos nice idea, I've just written them
    – o0'.
    Commented Jul 15, 2015 at 19:51
  • 3
    Meta discussion about this question Commented Jul 15, 2015 at 21:46
  • A github user obviosly gives me the right to view and copy the source put there, to fork is to make changes to my copy. I believe that if I get a legal copy of the source, I can do with it as I please (just like if I buy a book, I can also rip out it's pages and make a collage for my own enjoyment).
    – vonbrand
    Commented Mar 3, 2016 at 18:40
  • 2
    @CodesInChaos, this question was bring to discussion of the new GitHub Terms of Service update on 2017 at its issue tracker: The term "fork" is not defined anywhere in the GitHub Terms of Service
    – user
    Commented Jul 16, 2017 at 0:25

4 Answers 4

76

First of all, these two statements are made in sequence, not parallel (credit to MSalters for crystallizing this point):

Generally speaking, the absence of a license means that the default copyright laws apply.

...if you publish your source code in a public repository on GitHub... you allow others to view and fork your repository.

  • The first statement is a general statement about copyright law.
  • The second statement is about a license grant required by the GitHub Terms of Service.

They are both true, and if you host your code on GitHub, the second, specific statement takes precedence over the first general rule wherever the second rule applies. The second statement is a notice that hosting on GitHub requires you to make certain license grants to GitHub users which differ from the default rules of copyright.

Below is an inspection of what the "right to fork" could possibly mean, which will clarify the question: "What's the license of the new fork?"


(This is not legal advice. Furthermore, this is barely regular advice, and is based on a speculative -- but coherent -- reading of some ambiguity in the GitHub TOS.)

Here's what the GitHub Terms of Service has to say about forking:

By setting your repositories to be viewed publicly, you agree to allow others to view and fork your repositories.

The term "fork" is not defined anywhere in the GitHub Terms of Service, but it seems perfectly sensible to assume that "fork" here is meant in the sense that it is used elsewhere on github.com: the Fork button.

a "Fork" button on a GitHub repository page

GitHub probably intends "the right to fork" to mean "the right to use the Fork feature of the github.com website." In this case, "creating a fork" would not mean generally creating a copy or derivative work (as it does in general FLOSS parlance), but rather it means triggering the software of github.com to create and host a verbatim copy of a repository and categorize that copy under the user's list of forks.

If the original copyright owner doesn't license any other permissions, clicking that button is all that the TOS-required permission allows the user to do. This doesn't grant any rights to create a derivative work, or to redistribute the code outside of github.com, since the "Fork" feature is intrinsic to the github.com website.

Speculation: this right-to-fork language in the GitHub TOS was probably included to prevent legal issues around the use of the Fork feature. The intent was likely something to the effect of, "You must license the minimum amount of rights to allow github.com's Fork software feature to operate."

Based on this reading of "fork," if another user were to use a github.com-hosted forked-repository to prepare and distribute a derivative work, that would infringe on the owner's copyright, since such an action is outside the scope of the Fork software feature. Similarly, if the user were to create a verbatim copy outside the context of github.com's Fork functionality (e.g. copying the code to another website), that would also not be permitted. The TOS does not allow the right to create copies generally; it only requires the author to grant copying permission inasmuch as copying is a necessary component of the Fork feature.

(All that said, this is speculative based on a specific reading of "fork." I'd like to say, on a personal note, it is kind of ridiculous that the GitHub Terms of Service use "fork" without a shred of definition to be seen.)

16
  • 23
    Wait, Github doesn't even define what a fork is? That's just asking for trouble...
    – Zizouz212
    Commented Jul 15, 2015 at 12:10
  • 3
    @FreeRadical What I mean to say is that it's not a violation of copyright specifically because that action has been permitted by the author's agreement to the TOS. I agree that it's a violation of copyright in the general case, which is precisely why such language needs to be included in the TOS. I will edit to make this distinction clearer; let me know if I'm still misunderstanding you.
    – apsillers
    Commented Jul 15, 2015 at 12:37
  • 6
    "Generally speaking ARR... Even if this is what you intend ...specifically ... license to fork" - Any half-decent lawyer will spot the contrasting positions. The "generally speaking" part does not cover GitHub, as they explicitly state you give no longer reserve all rights by posting on GitHub. This is entirely normal legal practice: when you deviate from a default position, mention that default before stating the replacement position.
    – MSalters
    Commented Jul 15, 2015 at 13:22
  • 2
    I feel that an explicit comment on cloning the fork to a local repo is warranted. This would also seem to be a type copying that is outside the scope of the Fork feature, and would therefore be forbidden. This makes the ability to Fork an unlicensed repository largely useless, with the small exception of preserving a copy for purely viewing purposes should the original owner ever delete it.
    – jpmc26
    Commented Jul 15, 2015 at 18:28
  • 4
    For lack of a further explanation, I would assume that 'fork" is meant in the generic sense of copying a piece of source code and continuing to work on the copy. it doesn't make much sense to put your code on GitHub for the whole world to see and then try to keep others from copying it - that wouldn't be enforceable - so it doesn't make much sense to read the clause as only applying to GitHub's forking feature, which is just one particular way of making a copy. Commented Jul 16, 2015 at 15:50
15

Well, you actually give up a few rights by accepting the terms of service. The terms of service declare:

However, by setting your pages to be viewed publicly, you agree to allow others to view your Content. By setting your repositories to be viewed publicly, you agree to allow others to view and fork your repositories.

So effectively you don't have all rights reserved, but most rights reserved.

But doing so leaves big grey areas:

  • Can the forker create and distribute binaries?
  • Can the original or forked source code be released somewhere else than github?
  • Under which conditions can the resulting program be used?

It may be not very safe to use such code with undeclared license on Github.

8
  • 8
    "what's the license of the new fork?"
    – user490
    Commented Jul 15, 2015 at 10:47
  • 4
    @EricGärtner: That's the point I think the Github team hasn't reallyy thought through. Because the fork cannot give any rights the original project isn't giving, so it stays in a muddy grey area. Probably the only things allowed are viewing the source and forking on github, but not distributing source or binaries away from github. You may ask this as an own question.
    – Mnementh
    Commented Jul 15, 2015 at 10:51
  • 3
    It seems pretty clear. The TOS states you agree to allow viewing and forking. It doesn't state that you agree to allow redistribution or use. If the terms don't explicitly state that you allow those things, then unless your license allows them they aren't allowed. Why you would have a public repo for code that can't be used is beyond me, however. Commented Jul 15, 2015 at 15:36
  • 5
    @DoyleLewis a showcase for existing work for potential employers.
    – user756
    Commented Jul 15, 2015 at 15:51
  • 3
    I don't think that "give up rights" is a clear description. You issue license to perform those actions, but it is a non-exclusive license, so you don't lose them. (You do lose the ability to sue for these actions, when performed by the parties you are giving the license to -- but this is not a "right" in the same sense as "rights reserved" that immediately follows)
    – Ben Voigt
    Commented Jul 15, 2015 at 16:20
13

The two fragments you've highlighted contradict each other.

The real question is: What will the courts make out of this, if a fork happens, and the original author decides to sue?

I am not going to predict the outcome of such a conflict. The court may decide the law is superior to the click-wrap of GitHub's TOS, or vice versa. Nobody will know the answer until this has been tried in court.

However, I would strongly advice anyone against forking a GitHub project without a license. IMHO the legal risks of doing so outweigh any benefits.

However, if you do so, "what's the license of the new fork"? Well, unless you put an explicit license on your fork the copyright law default ("All rights reserved") applies to the derivative, with the original author holding the copyright on his lines of code, and you holding the copyright on your adaptations.

Also: Putting an explicit FLOSS license will increase your legal liability if you do this. Not only are you violating the original author's copyright, you are falsifying the integrity of rights information. This may increase the damages you will have to pay.

6
  • 1
    Yes. I really don't understand why Github added that to their ToS. At least they could have made it clearer, but as it is, it is a legal mess and such code is best left untouched.
    – Mnementh
    Commented Jul 15, 2015 at 11:38
  • 1
    But speculation is not good. Essentially, it means your giving your opinion on the matter. Note that within your answer.
    – Zizouz212
    Commented Jul 15, 2015 at 12:08
  • 1
    @Zizouz212, there is no speculation in my answer. It was stated up front that my comment (now deleted as it seems to have confused you) about why the GitHub TOS has this contradictory clause, was speculation. Commented Jul 15, 2015 at 12:14
  • 6
    Sorry, but this is a misunderstanding of the law. "All rights reserved" is indeed the default legal position, but it is a very weak position as the usual intent is to license specific rights. Very few books are written without the intent to be printed, very few TV shows are made without the intent of being broadcast. Therefore, license grants are perfectly normal and respected by the law. Copyright law simply can't be superior to such grants, it would entirely defeat the purpose of the law.
    – MSalters
    Commented Jul 15, 2015 at 13:26
  • 5
    @FreeRadical: You may want to review the TOS. It specifically mentions that by posting your code on GitHub, you grant two permissions (depending on the settings) : to view and to clone that code. Now you may argue that this TOS is not a separate license document, but there simply is no legal requirement for a license grant to have a particular form. The TOS is a legally valid contract between the author and GitHub which grants the latter a distribution right towards third parties (i.e. internet users). "Clickwrap" is a FUD term here, as the right granted is fundamental to what GitHub is.
    – MSalters
    Commented Jul 15, 2015 at 18:29
4

It seems obvious that this was intended to protect Github itself from claims of copyright infringement arising from the creation of forks. It wasn't meant for the benefit of Github users, so it's not surprising that it's of little practical use. You can create a fork, but without a license, you still can't do anything with the fork.

10
  • 2
    "You can create a fork, but without a license, you still can't do anything with the fork." You could well be right, but can you provide any evidence (such as from the Github TOS or other help docs) which confirm this? Commented Jul 16, 2015 at 10:44
  • 5
    It's quoted in the question: "the absence of a license means that the default copyright laws apply." But that's not true because Github says so; it's true because copyright is automatic. Commented Jul 16, 2015 at 16:26
  • That doesn't relate to what I was asking about. Commented Jul 16, 2015 at 20:46
  • @curiousdannii Then I don't understand your question. Commented Jul 16, 2015 at 20:56
  • 2
    @curiousdannii You can easily look up the definition of the word "fork." The elements of the definition are pretty universal: 1) creating a copy of a program and 2) making modifications to the copy. There is nothing in the definition of the word "fork" that implies an automatic grant of any kind of license. There is no reason to assume that a "right to fork" means anything other than exactly what it says. And no, I don't need to provide evidence of this; the burden of proof would be on anyone claiming that the phrase means something other than what the words literally mean. Commented Jul 16, 2015 at 23:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.