Как выбрать лицензию на GitHub

Организуйте работу в пулреквестах на GitHub.

Время чтения: меньше 5 мин

Задача

Скопировано

Выбрать лицензию для репозитория на GitHub.

Решение

Скопировано

На GitHub есть возможность указать лицензию для репозитория. Добавить типовую лицензию можно на этапе создания репозитория, как это описано в рецепте «Как создать репозиторий». Для этого необходимо выбрать лицензию из списка.

Если нужно добавить собственную, а не типовую лицензию, или выбрать лицензию уже после этапа создания репозитория, нужно сделать следующее:

  1. Перейти на первую вкладку репозитория.
  2. Кликнуть на «Add file», который находится в верхней части репозитория рядом с кнопкой «Code», и выбрать пункт «Create new file» в выпадающем списке.
Первая вкладка репозитория на GitHub с опциями по добавлению файла. Описание перед скриншотом.

На открывшейся странице введите имя файла LICENSE.md в специальное поле над блоком с его содержимым. После этого рядом с переключателем для редактирования и превью появится кнопка «Choose a license template». На этом этапе можете выбрать одну из типовых лицензий или написать собственную.

Поле для редактирования названия файла и выбора лицензии. Описание перед скриншотом.

После нажатия на кнопку «Choose a license template» вас спросят, уверены ли вы, что хотите покинуть страницу. Подтвердите, что согласны. В открывшемся окне в боковом меню слева можно выбрать одну из типовых лицензий GitHub. Например, MIT License или Apache License 2.0. В верхнем блоке есть подсказка по авторскому праву, которое защищает выбранная лицензия. В ней описаны разрешения, ограничения и условия.

После того, как определились с типом, нажмите кнопку «Review and submit». Она находится в боковом меню справа рядом с полями «Year» и «Full name».

Страница с доступными лицензиями. Описание перед скриншотом.

Снова откроется окно из предыдущего пункта. Можете отредактировать типовую лицензию или просто оставить всё как есть. Если вы уверены, нажмите кнопку «Commit changes…». Во всплывающем окне выберите комментарий к коммиту, его расширенное описание, если нужно, почту, а также в какую ветку хотите сделать коммит — основную или создать новую. Затем нажмите кнопку «Commit changes».

Модальное окно с подтверждением изменений. Скриншот описан выше.

После этого в репозитории добавится новый файл с лицензией, и на основной странице репозитория в блоке с информацией о репозитории справа появится выбранная лицензия. Например, MIT license.

Описание файла с лицензией. Описание скриншота выше.

Разбор решения

Скопировано

Лицензия позволит защитить авторские права и опишет условия использования репозитория другими людьми или компаниями. Схема выбора типа лицензии:

Свободное использование? Если да, то лицензия свободная и может быть:

  • условно-бесплатной — ShareWare, TrialWare, Demoware;
  • открытой — Open Source;
  • бесплатной — Nagware/Begware, Postcardware, Adware, Denationware, Freeware, GPL.

Если нет, то лицензия проприетарная и может быть:

  • платной — Commercial;
  • условно-бесплатной.
Схема выбора типа лицензии. Описание перед скриншотом.

Схема выбора открытой лицензии из числа самых распространённых:

  1. Требуется указать имя автора? Если нет, это The Unilicense. Если да, переходите ко второму или третьему пунктам.
  2. Изменённые файлы должны быть помечены? Если нет, лицензия на условиях первоначальной? Да → лицензия не определена. Нет → название должно отличаться → нет → это BSD или MIT. Если название не должно отличаться, то это Apache software license.
  3. Изменённые файлы должны быть помечены? Если да, то лицензия на условиях первоначальной? В случае нет лицензия не определена. Когда ответ да, указана ли территория распространения? Нет → GPL, да → Mozilla public license.
Схема выбора открытой лицензии. Описание перед скриншотом.

Поскольку GitHub, в основном, используется для хранения кода программного обеспечения, список типовых лицензий состоит из следующих: