Repositórios são pastas que possuem gerenciamento de versão através do git, ou seja, diretórios com git inicializado.
O fluxo do código nos repositórios é o mesmo em todo projeto.
- Primeiramente, os arquivos alterados são transferidos da máquina local do desenvolvedor(a) ao seu repositório remoto pelo comando git push. (seu repositório remoto fica localizado em https://github.com/{username}/{projeto})
- Após isso, o desenvolvedor precisa criar um pull request, referenciando infojr/{projeto} branch ⬅ username/{projeto} branch, como exibido na imagem abaixo, para que a alteração existente em seu repositório remoto seja transferida também ao repositório central de forma com que todos os membros consigam baixar a atualização em seus repositórios locais.
- Com o repositório central atualizado, qualquer membro pode baixar as atualizações com o comando git pull e continuar o desenvolvimento do projeto e dando início a esse ciclo novamente.
Observação: Nunca envie sua atualização diretamente ao repositório central sem passar pelo remoto, o ciclo é essencial para revisões e possíveis reversões.
No início de cada projeto, é trivial seguir os seguintes itens:
Fork é a criação de um repositório cópia remoto a partir do central. Pode ser dado clicando no botão Fork como demonstrado na imagem abaixo:
Esse comando serve para clonar o repositório remoto para sua máquina.
$ git clone https://github.com/infojr/{projeto}Dica: Se atente a executar esse comando no diretório onde está localizado o htdocs.
Após executar a clonagem do repositório, você agora possui um repositório local, porém, ele ainda não está configurado para reconhecer qual é o repositório central e qual o remoto.
$ git remote set-url origin https://github.com/{username}/{projeto}
$ git remote add upstream https://github.com/infojr/{projeto}upstream é o nome dado ao repositório central.
Caso tenha feito tudo certo, ao dar o comando git remote -v, o retorno do terminal deve estar semelhante à imagem abaixo:
Uma branch é uma ramificação no projeto para que uma nova funcionalidade seja implementada ou testada sem que o código-fonte principal e/ou o desenvolvimento dos demais desenvolvedores seja comprometido. Para projetos robustos, tais como SMA ou iCampus, a utilização de branches é essencial.
Análise da ramificação do iCampus
Para checar em que branch seu projeto se encontra, execute:
$ git branchPara mudar para uma branch em sua máquina, digite:
$ git checkout nome-da-branchApós isso, todos os arquivos do seu computador serão alterados para os presentes na branch em questão automaticamente.
E caso a branch não exista, você pode criar uma a partir da sua atual digitando:
$ git checkout -b nome-da-branchDica: Atente-se a qual branch você está trabalhando. (central ou local)
Após, o setup inicial e entender mais sobre o que são repositórios e como se comportam, agora vamos ver como enviar e baixar as atualizações do projeto.
O fluxo de desenvolvimento se resume basicamente em:
- Sempre ao executar git commit:
Esse comando nos informa quais arquivos foram alterados.
$ git statusPara que seja possível enviarmos ao repositório remoto, precisamos rastrear o arquivo pelo git, utilizando o comando:
$ git add pages/workflow.mdEsse comando fará com que o git adicione esse arquivo para a lista de arquivos alterados nesse futuro commit que iremos fazer.
Ao executar o comando git add, é possível ver que agora o git já reconhece o arquivo como pronto para ser comentado.
Dica: É possível executar o comando git add . para adicionar todos os arquivos modificados como prontos a serem comentados. Para remover arquivos do estágio, é possível executar git reset {arquivo} ou git reset .
Devemos comentar todos os arquivos adicionados utilizando git add de modo claro e objetivo para que todos os membros da equipe saibam do que a alteração em questão se trata.
$ git commit -m "Alteração do estilo do rodapé"Para puxarmos as atualizações do repositório central ao nosso local, executamos o seguinte comando:
$ git pull {nome do repositório remoto} {branch local}Caso tenha feito tudo conforme essa seção, execute:
$ git pull upstream master Após comentarmos nossa atualização, devemos enviá-las para o repositório remoto. Utilizamos:
$ git push Importante: Antes de executar esse comando, verifique se algum outro colega enviou uma alteração utilizando git pull
Um pull request é uma solicitação de alteração no repositório central.
Após executar o git push, é necessário criar um pull request para que seu código seja mesclado com o principal.
Como descrito na seção ciclo de projeto, você deve referenciar o repositório e a branch para comparação e assim, criar o pull request.
Novamente, coloque um título claro e objetivo e adicione uma descrição caso necessário.
Falta pouco! Agora você só precisa clicar em Merge pull request para que seu código seja mesclado com o repositório central.
E...
Mesclado!
Git não é uma ferramenta fácil de aprender, possui uma curva de aprendizado grande. Não tenha vergonha de perguntar!
Nesse tutorial estão apenas algumas funcionalidades essenciais do git, você pode conferir toda a documentação aqui.












