[GIT] Github Pull/Push - Aula 9
Github
O Github é uma plataforma de hospedagem de código e controle de versão que utiliza o Git, geralmente é a mais utilizado por programadores.
Conectando com um repositório do Github
Para conectar com o seu repositório do Github:
git remote add origin https://github.com/seu-usuario/seu-repositorio.git
Push
O Push é usado para enviar as alterações feitas localmente para um repositório remoto.
Podemos realizar um Push usando:
git push nome_do_repo_remoto nome_da_branch
Configurar o Upstream
Configuramos o Upstream com:
git push -u nome_do_repo_remoto nome_da_branch
A Flag -u
configura geralmente origin/main
(ou outra Branch que for passada) como o Upstream da Branch local, para que futuros comandos git push
e git pull
possam ser feitos sem especificar o Remote e a Branch.
Enviar Todas as Referências
Para enviar todas as Branchs do seu repositório local para o remoto:
git push nome_do_repo_remoto --all
Force Push
Usamos o --force
para forçar o envio de alterações para um repositório remoto, sobrescrevendo o histórico de commits na Branch remota.
Pull
O Pull é usado para atualizar o repositório local com as alterações do repositório remoto. Ele é uma combinação de dois comandos: fetch
(que baixa as alterações do repositório remoto) e merge
(que mescla essas alterações na sua Branch local).
Para fazer um Pull do repositório remoto:
git pull nome_do_repo_remoto nome_da_branch
Configurando o Pull para fazer Rebase
Para manter o histórico de Commits mais limpo, pode ser interessante usar Rebase no Pull no lugar de usar o Merge.
Para fazer isso, use:
git config --global pull.rebase true
Isso fará com que, por padrão, o Git use o Rebase em vez de Merge sempre que você executar git pull
em qualquer repositório no seu sistema.
Pull Request (PR)
Um Pull Request (PR) é uma maneira de propor alterações em um repositório, geralmente em projetos colaborativos, e pedir para que essas alterações sejam mescladas à Branch principal do projeto.
Realizando um PR
Iniciamos criando a Branch de funcionalidade, depois de terminadas as alterações, devemos fazer o push dessa Branch para o repositório remoto no GitHub.
Feito isso, no GitHub, o desenvolvedor cria um PR da Branch de funcionalidade para a Branch principal do repositório remoto.
Obs: O PR não é algo originado no GIT, por isso deve ser feito pelo próprio Github, já que é uma funcionalidade da plataforma.
Fluxo Básico de um Pull Request
-
O desenvolvedor cria uma Branch de funcionalidade.
-
O desenvolvedor faz Commits de alterações e as envia para o repositório remoto (Push).
-
O desenvolvedor cria um Pull Request no GitHub, propondo que o código seja integrado à Branch principal.
-
A equipe revisa o código e pode pedir ajustes ou aprovar as mudanças (Code Review).
-
O PR é mesclado na Branch principal, integrando as mudanças.