Por muito tempo eu tive o costume de subir meu código no Github, escrever um arquivo README.md bem básico, e achava que estava fazendo o melhor uso possível do meu repositório.
Mas com o tempo e curiosidade, descobri que você pode fazer muito mais do que apenas armazenar seu código em um repositório no Github.
Mas o que é mesmo um Repositório?
Um repositório, ou repo, é um espaço especial na internet onde seu código (ou qualquer outro tipo de dado que você decida guardar) vive.
Esse espaço, além de oferecer um ambiente seguro para seu código, oferece várias ferramentas de produtividade e colaboração, vamos falar um pouco delas, aba por aba.
Code
Começamos com a aba Code, que é a página principal do repositório e o lugar onde seu código vive. Além do código, aqui você pode ver o README.md do repo, sua descrição, releases, packages, quantos forks e stars ele tem.
Issues
A próxima aba é a de issues. Issues são uma ótima ferramenta de colaboração, onde você pode pedir ajuda para consertar bugs, solicitar features e muito mais. Você pode marcar uma pessoa específica para resolver cada issue, usar labels para facilitar que pessoas colaboradoras saibam que tipo de ajuda é esperada, e você pode adicionar issues aos seus projetos, para acompanhá-las com mais facilidade.
Pull Request
Na aba de Pull Request é onde encontramos as colaborações para serem revisadas. Quando uma pessoa trabalha no issue, ela cria um PR com as mudanças feitas, e a pessoa mantenedora com repositório pode revisar essas mudanças, para aceitá-las ou não. Você também pode criar um PR sem uma issue específica, mas se você está colaborando para um projeto que não é seu, recomendamos que crie uma issue explicando suas contribuições antes de enviar um PR para revisão.
Actions
Em seguida temos Actions, que é uma ferramenta de automação do GitHub. Se seu repo tem alguma Action, aqui você pode ver se ela está correndo corretamente, caso contrário, nessa aba você encontra informações para criar Actions.
Projects
Projects é um lugar onde você encontra os projetos linkados a esse repositório. Vou falar mais sobre Projects num futuro próximo, mas em resumo, é uma ferramenta onde você pode criar listas, kanbans, tabelas, tudo customizado, para te ajudar na organização e planejamento dos seus projetos.
Wiki
Eu pessoalmente nunca usei, mas a Wiki é uma ferramenta muito legal, que te permite criar uma documentação para seu repositório. Enquanto o READMD.md explica rapidamente o que é seu projeto e como usá-lo, na wiki você tem espaço para compartilhar uma documentação mais extensa e detalhada sobre seu projeto.
Security
Uma feature super importante, é a da aba de Security, que garante a segurança do seu repositório e dos dados contidos nele. Já subiu uma chave secreta em um repositório aberto sem querer? (não? só eu? 😅) Quando isso acontece, você logo recebe um email avisando e te instruindo sobre quais medidas de segurança tomar. Esse é apenas um pequeno exemplo de segurança no GitHub. Nessa aba você consegue habilitar políticas de segurança personalizadas, configurar alertas do Dependabot, configurar um escaneamento do seu código e muito mais.
Você pode aprender mais sobre como deixar seu repositório mais seguro com o Dependabot nesse artigo.
Insights
A aba de Insights traz informações sobre as atividades acontecendo no seu repositório, ver um gráfico de contribuições e pessoas contribuidoras, forks e muito mais. Recomendo muito que você dê uma olhada nessa aba e em todas as informações que ela contém.
Outra coisa bem legal em Insights é uma lista de Community Standards, que mostra passos e ações a serem tomadas para que seu repositório esteja nos padrões da Comunidade Open Source, como ter um README, Código de Conduta, dentre outras coisas.
Nessa aba você consegue ter acesso a muitas informações interessantes, vale a pena dar uma explorada.
Settings
A última aba é uma das mais importantes: Settings (ou configurações) e aqui você pode fazer muita coisa. Ativar GitHub Pages, adicionar pessoas colaboradoras, configurar e personalizar seu repositório todinho além de deletá-lo e mudar sua visibilidade. Eu preciso de um artigo todo só pra falar sobre essa parte do repositório.
Bônus: Discussions
Como bônus, temos a aba de Discussions, que só aparece se você ativá-la nas configurações. Essa ferramenta te dá um espaço dentro do seu repositório (ou organização) para conversas, perguntas e comunicação em geral, sem a necessidade de se abrir issues. Você pode criar até enquetes lá dentro.
E é isso…
Terminamos aqui nosso post sobre a anatomia de um repositório no GitHub. Escrevendo esse artigo eu aprendi bastante e descobri que tenho muito mais para aprender, principalmente sobre a aba de Insights e a de Settings, então provavelmente vou escrever sobre elas em mais detalhe no futuro.