One of my projects is in GitHub and currently it does not have any license such as MIT. Therefore, it should be considered as an Open Source project by default.

But, I wish that if anyone uses this project then he makes a reference to me and my repository as well. So, I am not asking money for my code and it will be free, but I hope that no one treats it as his/her own code.

Do you have any solution for me?


2 Answers 2


One of my projects is in Github and currently it does not have any license such as MIT. Therefore, it should be considered as an Open Source project by default.

Sorry, but that's wrong. We have a clear analysis of the licence status of github code that has no explicit licence, and it's not open source in any way. If you want your code to be free you need to attach a licence to it telling people what rights they have, and what obligations they assume if they exercise those rights.

But, I wish that if anyone uses this project then he makes a reference to me and my repository as well.

Nearly every free software licence there is requires that existing copyright statements be maintained, so if having (c) 2019 Salman Lashkarara displayed is enough for you, then pick any of the standard permissive or copyleft free licences.

If you want explicit text to be displayed, something like This code uses libfoo by Salman Lashkarara, the original source of which can be found at https://github.com/libfoo, you still have some options. GPLv3 s7b allows "Requiring preservation of specified reasonable legal notices or author attributions". To me, a pointer to a repository is reasonable author attribution, so GPLv3 might work for you in that regard. Other licences may have similar possibilities, but note that people may be unwilling to use GPLv3 material with a section 7 requirement.

If you want more than that, you quite quickly get into the realm of advertising, and that can be both a practical and aesthetic turnoff for free software users. Your code may not get much reuse if you take this route. The old 4-clause BSD licence required that

All advertising materials mentioning features or use of this software must display the following acknowledgement: This product includes software developed by the University of California, Berkeley and its contributors.

and this caused problems. According to the GPL compatibility list,

This is a lax, permissive non-copyleft free software license with a serious flaw: the “obnoxious BSD advertising clause”. The flaw is not fatal; that is, it does not render the software nonfree. But it does cause practical problems, including incompatibility with the GNU GPL.

So in short: you need a licence. The licence is where you tell people how much credit they have to give you when reusing your code, so pick it carefully.

  • GPL section 7 is (for the most part) a compatibility patch for Apache License paragraph 4d, which imposes a similar (but more specific) requirement. In practice, the ASF uses these NOTICE files as the standardized place to put all attribution information (copyright statements, author credits, and the like) that must be preserved.
    – Kevin
    Commented Jul 6 at 17:13

If you do not attach a specific license to your public GitHub project, then the project is publicly viewable and people are allowed to make forks of it based on the GitHub ToS. But that is where the permissions end. Your code is most definitely not open-source, as that term includes giving additional freedoms to users of your code.

All licenses I am aware of allow that you are recognized as the author of the software, most commonly in a copyright declaration (Copyright (C) 2019 Salman Lashkarara). In addition, the Apache 2.0 license has a mechanism for non-legal attribution notices that could be used to reference your repository. In both cases, people building upon your code are required to keep those declarations/notices intact.

  • 1
    Recognition by retaining a copyright notice is a common feature of open source licenses, but I don't think it is required. One could conceivably make a license that said "go ahead and use and distribute my code, but you must remove any copyright notices that mention my name before you redistribute it" and I suspect that would still be a valid (open source) license. I'm not aware of any license that requires this, but conceivably you could if you wanted to. Nowadays the copyright notice is not generally legally required; it is copyright with or without such a notice.
    – Brandin
    Commented Nov 15, 2019 at 7:17

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.