Toda vez, ao dar início em uma nova tarefa, a branch base local, neste caso a "develop
", deve estar sincronizada com a branch remota, para isso se utiliza o git pull
git pull
Com o código da branch local atualizado, cria-se uma branch local a partir desta para trabalhar utilizando o comando:
git checkout -b nomeDaBranch
Os commits devem ser realizados dentro desta branch descrevendo cada solução
git commit -m "{Conjunto do(s) arquivo(s)}: {Breve descriçãodo da solução})"
Ex:
git commit -m "Damas: jogo em multiplayer"
Após concluir todos os commits, estes devem ser enviados para a branch remota:
git push -u origin nomeDaBranch
Obs: a parte "origin nomeDaBranch
" diz respeito à branch remota que irá receber os commits, sendo criada quando no repositório quando inexistente. A configuração "-u
" ou "--set-upstream
" configura o repositório remoto da branch. Outra informação importante de esclarecer é que esses comandos "extras" são necessários somente no primeiro push, quando a branch é criada. Ao enviar os próximos commits, só o git push
já basta.
- No repositório acesse a aba
Pull requests
- Clique no botão
New pull request
- Selecione a
branch base
. Neste caso é a branchdevelop
- Selecione a
branch
que deseja mesclar - Clique em
Create pull request
- Confira o título e adicione algum comentario se necessário
- Clique noamente em
Create pull request
A partir de qualquer repositório local
de qualquer dispositivo com acesso ao repositório remoto
, para criar uma branch local
a partir de uma branch remota
, basta digitar:
git checkout -b "nomeDaBranch" "origin/nomeDaBranch"
ou
git switch nomeDaBranch
Se no seu repositório local
já existe a branch para qual você deseja mudar, basta digitar:
git checkout
nomeDaBranch
Ocorre de novos commits
serem adicionadas ao repositório da branch base remota
enquanto a sua branch base local
e consequentemente sua branch secundária local
estão desatualizadas. Nesse caso, quando commits
de arquivos não estão presente na branch secundária
, pode surgir um conflito
.
Para resolver esse conflito, primeiramente atualizamos a branch base
;
git checkout develop alterna para a branch base
git pull atualiza a branch
volte para a branch
a se atualizar
git checkout nomeDaBranch
atualize a base da branch
git rebase develop
no momento do rebase o conflito será exibido, resolva este pelo próprio VsCode com muita cautela pois se não feito corretamente resultará em novos erros.