What you need to know about GitHub licenses: how to select and add


GitHub licenses – what are we talking about? In order to create software, you need to not only write it but also decide what users or developers have the right to do with it. If someone creates a free program for everyone, he is doing a good deed, but whoever uses it will have to justify how he uses it. For example, if a company in its activities will work with any free office (for example, LibreOffice), then for the auditors it must be able to prove that it has the right to do so. To do this, it will be enough to present the appropriate license. If the developer forgets to formulate it, then the firm may find itself in a difficult position.
What you need to know about GitHub licenses: how to select and addClassification of licenses and types of licenses [/ caption] When creating an application, the developer must decide what actions with his program will be allowed and what will not. For example, we can talk not only about using, but also about studying the texts of programs or making their own adjustments to the software product. GitHub is one of the largest services for collaborative project development. At the same time, they can work here not only on free, but also on commercial projects. By specifying a suitable license, developers will eliminate confusion about how to use the created product. The problem is that there are different types of licenses, and it is not always easy to determine which option should be preferred in a particular case. Also, it is not uncommon for some projects to have no license.It is necessary to learn more about licensing in order to understand what rights and obligations of users arise in different cases.
What you need to know about GitHub licenses: how to select and add

Why do I need to license Open Source projects on GitHub

By specifying the required license, the developer may provide for the following:

  1. Terms of use of the program . They may provide for the payment of a fee or, in some or all cases, allow free use.
  2. Sometimes programs are created to be developed by the community . In this case, it is important that everyone who wishes can familiarize themselves with the program texts.
  3. When the code is available, some might make changes to make the program functional and as reliable as possible. Sometimes the author can allow everyone to do this, in other cases he offers to send a change to him, and makes adjustments to the project on his own.
  4. You need to decide if third parties can make changes to the project and propose on their behalf. In this case, it is necessary to indicate with which license their product should be.

Solving these and similar issues, the author of the application actually largely determines the future fate of the software product he created.

What types of licenses are there

A license is an agreement in which one party (the licensor) establishes a rule for the other party (the licensee) to use the product it creates. In practice, we are not talking about the signing of a document by the parties, but about automatic consent with the corresponding rights and obligations upon its use. There are practically no restrictions for specifying rights and obligations. The only condition is that they must comply with the law. Creating your own licenses is a tricky job as you need to ensure that it is compatible with other regulations. The best option is to select and use one of the standard types of such documents. In practice, it is also customary to use multi-licensing. Most often, in such cases, two licenses are used simultaneously.Although the author of the program has the right to independently formulate the rules that users must follow, nevertheless, in practice, the use of a large number of types of licenses has developed, from which you can choose the appropriate one in most cases. The following are the most popular options used on Git Hub in most cases. The most common licenses used on Git Hub are:
What you need to know about GitHub licenses: how to select and addThe programmer will have to be able to choose one that will fit his plans. To do this correctly, you need to understand what features are inherent in certain species.

If the author refuses to formulate the document, then in this case copyright will apply, which are provided by default by the legislation of his country. The absence of a license in this way does not mean that you can do whatever you want with the program. In fact, this situation can be considered as one of the types of licenses.

How to choose a Github license

Before starting to search for a suitable option, it is necessary that the programmer formulate his requirements, from which he is going to proceed with further licensing. Next, you should familiarize yourself with the typical options corresponding to the request. After that, you will need to carefully study the legal wording and make a final decision about what the license should be. In order to make an informed choice, you need to understand what rights and obligations are determined by a particular type of license. To make the right choice, you can use special services called comparators. Here are some examples:

  1. https://choosealicense.com/. This site contains guiding questions for choosing the right option and detailed advice to help you understand the specifics of use.
  2. The https://opensource.org/licenses page is dedicated to reviewing various free software solutions.
  3. The site https://tldrlegal.com/ can be viewed as an encyclopedia for various license options. It contains both precise legal language and detailed commentary.

What you need to know about GitHub licenses: how to select and addCompare licenses at https://choosealicense.com/ [[]] However, the most productive choice is to carefully read the relevant legal documents. Although this is a time-consuming activity, nevertheless, studying the texts will give the developer all the answers he needs.

How to add a license to Github

Despite an extensive selection of license options, which in practice have proven their effectiveness and reliability, the developer may have his own ideas about what the license should be for the program he created. In this case, the service provides the ability to add your own version or adjust the existing one. To add a license to Github, you need to follow these steps:

  1. You need to go to the main page of your repository.What you need to know about GitHub licenses: how to select and add
  2. You need to click on the button to add a file, then select “Create new file”.What you need to know about GitHub licenses: how to select and add
  3. Next, you need to enter the file name. For a license, it can be one of two options: LICENSE or LICENCE.md. Capitalization is mandatory here.
  4. To the right of the file name input field, click to select a license template.What you need to know about GitHub licenses: how to select and add
  5. In the menu on the left side of the page, select the line “Add a license to your project”. In this case, an option is selected from existing documents.What you need to know about GitHub licenses: how to select and add
  6. Then click on the “Review and submit” line. Then enter their agreement details.
  7. After that, it is necessary to clarify what the additions or changes were made. Next, they indicate whether the selected document was corrected or whether we are talking about creating another version of the license.What you need to know about GitHub licenses: how to select and add

After confirming the changes, the developer completes the procedure for making changes to the list of licenses on the Git Hub service.

Next, we will consider those options that are the most popular. Having understood their strengths and weaknesses, the programmer will be able to find the right option or understand how to effectively search.


This license can be called one of the most popular. It is classic for those who make free software. One of the main requirements of this document is that it
allows third parties to freely modify the program , but at the same time they have the right to distribute the result only under the same license. This license may have different versions. The latest is the third. The GPL was used by developers of such programs as the Drupal web content management system, the MariaDB database management system, the vector graphics editor InkSkape, and several others. It is interesting to note that SQL uses not only the GPL but also a commercial license.


This title translates to GNU Lesser General Public License GPL. For some developers, the GPL is not suitable, as it creates an obligation for them to distribute modified products under the same license. The peculiarities of using this option can be illustrated by how the process of licensing the use of libraries created by a programmer occurs. In this case, it is customary to consider the following three options:

  1. When a library provides new functions, and no commercial libraries can perform a similar task, then the use of the GPL is optimal.
  2. The developer in the free library has already implemented the existing standard. In this area, there are commercial options with similar functions. In this case, it will be convenient to choose LGPL.
  3. When it comes to a new standard that actually competes with a commercial one, the Apache license is appropriate.

This standard
allows commercial use of the libraries . If modifications are made, the same terms and conditions must be used for distribution. However, simple code usage allows conditions to change.

Eclipse Public License

This document
permits distribution under other licenses, including commercial ones . The main condition is that in the modified works, the innovations will be placed in a separate module. This license has gained popularity in the development of Java products. An example is the Clojure programming language, a framework for testing java applications.
What you need to know about GitHub licenses: how to select and add

Mozilla Public License

Some see this document as a compromise between the GPL and commercial licenses. It is a requirement of the MPL to
have public access to certain files . The software product may contain some files under this license, and others without it. After the modification, it is allowed to put the license that is needed (for example, it can be a commercial one), but this is possible only on condition that access to the files released under the MPL is still open. In this case, the end user should be provided with information about the authors of the original software. LibreOffice office, Mozilla browser and other software products were released in accordance with this document.

Apache License Github

AL is called a liberal free license. This feature is due to the fact that there is
no requirement to release a derivative product under the same conditions as before . This document is actively used by the Apache Software Foundation. When using it, the following is allowed:

  1. The software product is allowed to continue to be used for commercial purposes.
  2. Modifications to applications are allowed.
  3. Subsequent redistributions must include the name of the original author.

When creating a new variant, licensees have no obligation to provide the original product code. This license has gained significant popularity. This can be demonstrated by listing the well-known software products that are released under this type of license: the Android operating system, the framework with which to create enterprise applications in Java, the Apache web server. https://youtu.be/wyZq-EazOmU

MIT License

Some people find this free software licensing option to be the most popular. Some consider its main advantage to be good compatibility with various types of free or commercial licenses. The most important features are the
ability to modify the code, as well as the permission to redistribute under other licenses at the choice of the person who made the changes . The software products that use this document are: a JavaScript library called JQuiery, an Atom text editor, AngularJS – a framework for developing in JavaScript.
What you need to know about GitHub licenses: how to select and addComparison of licenses for Git Hub [/ caption]

Underwater rocks

Sometimes the author initially chooses one version of the license, and later wants to change it. If he created the program alone, then such a change will not be difficult. However, in cases where there were many participants in the development, then it will not work without their consent. For example, the creator of Linux, although he actually made the basis of the operating system, will not be able to change the license without the consent of all those programmers who took part in further development. When redistributing under MPL, those who made changes to the code cannot offer files under MPL under another license. The use of the new document will apply to other software modules.

Поделиться ссылкой:

Rate this post
Rate author
Programming, investment and algorithmic trading
Add a comment