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.

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?

New contributor
Salman Lashkarara is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.
10

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.

2

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 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.

Your Answer

Salman Lashkarara is a new contributor. Be nice, and check out our Code of Conduct.

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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