Público ≠ permitido
Mesmo em um repositório público no GitHub, se não houver arquivo LICENSE o código não é open source. O direito autoral nasce automaticamente no momento em que o código é escrito (na maioria dos países signatários da Convenção de Berna), e, sem permissão específica, só o titular pode copiar, modificar, distribuir e criar obras derivadas. A documentação do GitHub também explica que, sem licença, aplica-se a lei de direitos autorais padrão: o titular mantém todos os direitos e as outras pessoas não podem reproduzir, distribuir nem criar obras derivadas.
O que os termos do GitHub permitem
Segundo os Termos de Serviço do GitHub (D.5, 'License Grant to Other Users'), quem publica conteúdo em um repositório público concede aos usuários do GitHub o direito de usar, exibir e executar o conteúdo dentro do serviço GitHub e de reproduzi-lo na medida permitida pelos recursos do GitHub, como o fork. Ou seja, é possível:
- Ver e ler o código na web
- Fazer fork dentro do GitHub
Mas os termos não permitem direitos além disso, como incluir o código no seu produto e distribuí-lo ou publicar versões modificadas em outro lugar.
Se você quer usar código sem licença
- Peça ao titular: por issue ou e-mail, peça que adicione uma licença. Muitas vezes foi só esquecimento, e a pessoa coloca a MIT ou outra de bom grado.
- Obtenha permissão por escrito: se não for possível adicionar uma licença, obtenha uma permissão separada que descreva o escopo de uso e guarde-a.
- Procure alternativas: busque uma biblioteca open source com a mesma função.
- Implemente você mesmo: escreva do zero sem olhar o código, com base apenas na especificação ou no comportamento (a chamada implementação clean room). Transcrever o código original pode configurar reprodução, então tome cuidado.
Quando o README diz apenas "use como quiser", a situação é ambígua. A intenção parece clara, mas o escopo (modificação, redistribuição, uso comercial) não é, então o mais seguro é pedir que coloquem uma licença padrão.
Casos ambíguos comuns
- Sem LICENSE, mas com
"license": "MIT"só no package.json: a intenção parece ser MIT, mas a MIT exige incluir o aviso de copyright e o texto de permissão nas cópias, e sem o texto completo é difícil cumprir o aviso. É melhor pedir que adicionem um arquivo LICENSE ao repositório. - Código de respostas do Stack Overflow: o conteúdo enviado pelos usuários é oferecido sob Creative Commons BY-SA (2.5, 3.0 ou 4.0, conforme a data da publicação). Há condições de atribuição e de compartilhamento pela mesma licença, então verifique a política da empresa antes de levá-lo para código de produto.
- Código de blogs e tutoriais: se não houver indicação específica nos termos de uso do site ou no texto, em princípio os direitos estão reservados.
Como licenciar o seu repositório
- No gerador, escolha a licença, informe ano e titular e baixe o arquivo
LICENSE. - Faça o commit na raiz do repositório. O GitHub reconhece o arquivo e exibe a licença nas informações do repositório.
- Informe o identificador SPDX no campo license de
package.json,Cargo.toml,pyproject.tomletc. (guia SPDX). - Se houver código de outras pessoas misturado, organize separadamente a licença e os avisos dessas partes (aplicação prática).
Quando se deixa de licenciar de propósito
Se você só quer mostrar o código, como em um portfólio ou trabalho acadêmico, sem permitir a reutilização, não colocar licença também é uma escolha. Nesse caso, escrever no README 'Todos os direitos reservados (All rights reserved)' e um contato reduz mal-entendidos. Ainda assim, sendo um repositório público, não é possível impedir a visualização e o fork que os termos do GitHub permitem.
Este texto é informação geral e não constitui aconselhamento jurídico. Para decisões importantes, consulte um profissional.
Fontes
- GitHub Docs, Licensing a repository — https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/licensing-a-repository
- GitHub Terms of Service, D.5 — https://docs.github.com/en/site-policy/github-terms/github-terms-of-service
- choosealicense.com, No License — https://choosealicense.com/no-permission/
- Licenciamento de conteúdo do Stack Overflow — https://stackoverflow.com/help/licensing