Features de colaboração

Issues

A aba de issues é utilizada para reportar bugs, sugerir melhorias, ou dar qualquer sugestão a respeito do projeto.

Criando issue

Para criar uma nova issue, basta acessar a aba de issues, e clicar em nova issue.

issue-github

Abrirá uma aba, nela você inserirá título para a issue, e conteúdo, que será escrito no formato markdown(.md).

Usando a issue

Assim que você enviá-la, a issue ficará pública como issue aberta (ainda não resolvida) para todos no repositório, e marcada com um contador, no caso, se for a primeira issue, ela será a issue #1.

Com a issue pronta, podemos comenta-la.

Como moderador do repositório, podemos delegar essa issue para algúem (que fechará a issue assim que concluí-la), e podemos nós mesmos fecharmos a issue.

issue-pronta

Fechando issue delegada

Para fechar uma issue delegada a você como contribuidor, basta dar um commit, e na mensagem do commit, adicionar ao final: fix #[número da issue], assim a issue fechará automaticamente.

issue-fechada

Personalizando issues como moderador (Adicionando template)

Para adicionar um template de issues para seus colaboradores, basta acessar o repositório, settings, rolar pra baixo até features, e checar a caixinha de features, depois é só clicar em set up templates. Após isso, basta configurar e commitar.

Fork

O fork serve para trazer um repstório de algúem para a sua conta no github, funciona como um git clone. Após o fork ser feito, você fica com uma "estação de trabalho" própria no seu repositório, no qual você faz modificações, e pode enviar para o repositório original fazendo um pull request, que antes de ser integrado, deve ser analisado e aceito pelos moderadores.

Como fazer o fork pelo github web

Primeiro, com o repositório alvo aberto, clicamos no botão fork

botao-fork

Após isso, você deve escolher um nome para seu fork, além de decidir se deve copiar apenas a branch main, ou todas as branches.

fork-config

Como fazer o fork pelo git

Primeiro, é necessário fazer um clone comum do repositório, depois devemos conectar ele ao repositório remoto, para receber as atualizações do repositório. Para conectar usaremos o comando:

git remote add upstream [Link do repositório]

Trazendo alterações do repositório remoto (sincronizando)

Para trazer as alterações do repositório original para o nosso fork remoto, basta clicar em Sync fork:

sync-fork

Agora, para trazer as atualizações do repositório local, usa-se o comando:

git pull upstream main

ou

git pull origin main

Colaborando no repositório DIO

Criando uma nova branch

Vamos criar uma branch conforme os padrões da documentação (readme) do próprio repositório:

readme

Trabalhando na branch

Nesse exercício adicionei meu readme.md, apresentando meu perfil profissional na aba community do repositório.

Para fazer isso, pressionei a tecla . dentro do repositório, abrindo o "vscode" do github web, nele eu fiz o procedimento padrão que eu faria no vscode:

  • Criei um novo arquivo (readme.md)
  • Trabalhei dentro dele:
  • Dando push para o meu fork

  • Dei o .add clicando no +:
  • .add
  • Escrevi a mensagem de commit que a professora deixou no readme do repositório.
  • Commit;
  • Push:
  • push

    Pull request

    Após o push, as alterações devem sair do fork e serem direcionadas ao repositório original, mas para isso precisam ser aprovadas por um moderador, isso garantirá que nossas alterações não causarão problemas ao repositório. Para pedir aprovação, faremos o pull request. Primeiro, após termos feito o push com suscesso, aparecrá esse botão:

    pull-request-botao

    Após apertar o botão, seremos direcionados para a página do pull request.

  • Nessa página poderemos ter um template, que deverá ser preenchido para auxílo dos revisores, e teremos um botão create pull request.
  • Acima da página teremos uma aba com informaçõe sobre o que o pull request mandará para revisão no repositório original.
  • Abaixo da página teremos uma aba que mostrará quantos commits foram feitos nesse pull request, quantos arquivos serão atualizados, e quantos contribuidores participaram.
  • Depois de fazer o pull request, ele será revisado pelos moderadores do repositório, e caso seja aprovado, eles darão merge das suas mudanças no repositório original, isso será notificado para você no github.