Pular para o conteúdo

Como escrever um CONTRIBUTING.md

O CONTRIBUTING diz como o projeto quer receber ajuda. Veja os blocos que importam e onde o GitHub o exibe.

Ferramenta relacionada

Gerar o CONTRIBUTING.md

O que colocar no CONTRIBUTING.md?

Passos para criar boas issues e pull requests, como preparar o ambiente e rodar os testes, o padrão de commits, o prazo de resposta e o link para o código de conduta. Não exagere nas regras.

O que é o CONTRIBUTING

É o arquivo em que o projeto explica como quer receber ajuda. A documentação do GitHub diz que as diretrizes de contribuição ajudam as pessoas a enviar pull requests bem formados e issues úteis, e reduzem trabalho rejeitado ou refeito. Para quem chega pela primeira vez, é o arquivo mais importante depois do README: ele diz o que fazer antes de escrever uma linha de código.

Onde ele fica e como o GitHub o mostra

O CONTRIBUTING pode ficar na raiz do repositório, em docs ou em .github. Havendo mais de um, o GitHub procura primeiro em .github, depois na raiz e por último em docs. Quando alguém abre uma issue ou um pull request, vê um link para o arquivo, que também aparece na página de contribuição do repositório. Se o arquivo se chama CONTRIBUTING.md, o GitHub mostra uma aba "Contributing" na visão geral do repositório e um link na barra lateral.

O que incluir

A documentação do GitHub sugere três coisas: os passos para criar boas issues e pull requests, links para documentação externa, listas de e-mail ou o código de conduta, e as expectativas de comportamento da comunidade. A Open Source Guides acrescenta, em seu guia de boas práticas, o que dizer sobre o processo: como as contribuições são revisadas, quais tipos você aceita, em quanto tempo costuma responder e quanto tempo você tem para dar. Reunindo as duas, um bom arquivo tem estes blocos:

  1. Antes de começar: ler o código de conduta e procurar nas issues se a ideia já existe.
  2. Como relatar um problema: o que escrever em uma issue (veja como abrir uma boa issue).
  3. Como propor uma mudança: fork, clone, branch (veja o passo a passo).
  4. Como preparar o ambiente e rodar os testes: os comandos, de verdade.
  5. Padrão de commits: por exemplo, Conventional Commits.
  6. Como abrir o pull request e o que esperar da revisão, inclusive o prazo.
  7. Onde tirar dúvidas.

Modelos de issue e de pull request

O CONTRIBUTING fica mais curto quando modelos fazem parte do trabalho. Os modelos de issue ficam em .github/ISSUE_TEMPLATE, em Markdown ou em formulários .yml; os de pull request podem ficar na raiz, em docs ou em .github. Ambos precisam estar na branch padrão para aparecer. A Open Source Guides cita modelos e um guia de contribuição como forma de filtrar pedidos de baixa qualidade antes que cheguem.

Não exagere nas regras

Cada regra extra é uma barreira. A Open Source Guides diz isso: padrões simples. Se uma exigência não pode ser conferida por um teste automático nem pela revisão, pense se ela precisa estar no arquivo.

Exemplo resolvido: o roteiro de um CONTRIBUTING

Para o projeto listaki, as respostas ao formulário do gerador de CONTRIBUTING seriam: contribuição por fork, repositório msouza/listaki, ambiente npm install, testes npm test, commits no padrão Conventional Commits, issue antes de mudanças grandes e prazo de uma semana. O gerador devolve um arquivo com as seções "Antes de começar", "Como relatar um problema", "Como propor uma mudança", "Preparar o ambiente", "Conferir antes de enviar", "Mensagens de commit", "Abrir o pull request" e "O que acontece depois", com os comandos de git já escritos com o seu repositório. Você copia ou baixa, ajusta o que for específico do projeto e faz o commit na raiz.

Perguntas frequentes

Onde o GitHub mostra o CONTRIBUTING?

Quando alguém abre uma issue ou um pull request, o GitHub exibe um link para o arquivo, que também aparece na página de contribuição do repositório. Se o arquivo se chama CONTRIBUTING.md, há ainda uma aba Contributing e um link na barra lateral.

Em que pasta o arquivo fica?

Na raiz, em docs ou em .github. Havendo mais de um, o GitHub procura primeiro em .github, depois na raiz e por último em docs, segundo a documentação.

CONTRIBUTING e modelo de pull request são a mesma coisa?

Não. O CONTRIBUTING explica o processo com antecedência; o modelo de pull request é um texto pronto que aparece na hora de abrir o pedido. Os dois se complementam, e os modelos precisam estar na branch padrão.

Como gero um CONTRIBUTING.md?

No gerador deste site, você informa o projeto, o repositório, os comandos de ambiente e de teste, o padrão de commits e o prazo de resposta. Ele devolve o Markdown com os comandos de git já escritos, para copiar ou baixar, tudo no navegador.

Fontes deste guia

Abertas em 11/10/2026. O texto é nosso, em português; as fontes ficam aqui com link, licença e o que foi lido.

  • Setting guidelines for repository contributors (GitHub Docs)
    A página não mostra data · aberta em · reconferência: confirmada na abertura (11/10/2026) · licença do conteúdo: CC BY 4.0 (conteúdo); MIT (código)
    O que lemos: O que é o arquivo CONTRIBUTING, onde pode ficar (na raiz, em docs ou em .github; havendo mais de um, o GitHub procura primeiro em .github, depois na raiz e por último em docs), como o GitHub o mostra ao abrir issue ou pull request e o que incluir.
    Como usamos: Texto próprio em português; os fatos e os comandos vêm da página, sem copiar trechos. Link e data em cada uso.
  • Best Practices for Maintainers (Open Source Guides)
    A página não mostra data · aberta em · reconferência: confirmada na abertura (11/10/2026) · licença do conteúdo: CC BY 4.0
    O que lemos: Documentar processos (visão, como contribuições são revisadas, prazos), aprender a dizer não com educação, apoiar-se na comunidade (rótulos para iniciantes, dividir responsabilidade), automatizar testes e modelos, e fazer pausas sem culpa.
    Como usamos: Texto próprio em português; os fatos e os comandos vêm da página, sem copiar trechos. Link e data em cada uso.
  • About issue and pull request templates (GitHub Docs)
    A página não mostra data · aberta em · reconferência: confirmada na abertura (11/10/2026) · licença do conteúdo: CC BY 4.0 (conteúdo); MIT (código)
    O que lemos: Modelos de issue ficam em .github/ISSUE_TEMPLATE (.md ou formulários em .yml); modelos de pull request podem ficar na raiz, em docs ou em .github; ambos precisam estar na branch padrão.
    Como usamos: Texto próprio em português; os fatos e os comandos vêm da página, sem copiar trechos. Link e data em cada uso.

Informação geral, não é aconselhamento jurídico. Quando um guia cita uma licença de conteúdo, ela vale para a página citada, não para este site.