Git: Criar um branch
Última atualização
A forma moderna de criar um branch e trocar para ele em um único passo é git switch -c <name>. O mais antigo git checkout -b <name> faz a mesma coisa e ainda funciona em todos os lugares. git branch <name> cria o branch sem trocar para ele. Um novo branch começa a partir de onde você está agora, a menos que você indique um ponto de partida diferente.
Experimente estes comandos no terminal playground: um shell de verdade no seu navegador, sem nada para instalar.
Sintaxe
| Command | What it does |
|---|---|
git switch -c feature | Cria feature e troca para ele (moderno) |
git checkout -b feature | Cria e troca (mais antigo, equivalente) |
git branch feature | Cria o branch sem trocar para ele |
git switch -c feature main | Cria feature a partir de main |
git switch -c feature <hash> | Cria um branch a partir de um commit |
Casos comuns
| Goal | Command |
|---|---|
| Criar um branch a partir de um branch remoto | git switch -c feature origin/feature |
| Enviar um novo branch e definir o upstream | git push -u origin feature |
| Criar um branch para o qual você trocará depois | git branch feature |
Perguntas frequentes sobre criar branch no Git
Como crio um branch e troco para ele em um único comando?
Execute
git switch -c <name> (Git moderno) ou o equivalente git checkout -b <name>. Ambos criam o novo branch a partir do seu commit atual e fazem o checkout imediatamente, então você já pode começar a trabalhar nele.Qual é a diferença entre git switch -c e git checkout -b?
Eles fazem a mesma coisa: criar um branch e trocar para ele.
git switch é o comando mais novo e mais focado, introduzido para separar a troca de branch dos muitos outros usos do git checkout. git checkout -b é mais antigo, mas ainda totalmente suportado; use o que sua equipe preferir.Como crio um branch a partir de outro branch ou de um commit específico?
Adicione um ponto de partida como último argumento:
git switch -c feature main cria a partir de main, e git switch -c feature <hash> cria a partir de um commit específico. Sem um ponto de partida, o branch é criado a partir do seu HEAD atual.Como envio um novo branch para o remoto?
Depois de criá-lo localmente, execute
git push -u origin <name>. O -u define o upstream, para que os futuros git push e git pull nesse branch não precisem de argumentos. O branch não existe no remoto até você enviá-lo.Posso praticar isso online?
Sim. Abra o terminal playground para executar estes comandos em um shell de verdade no seu navegador, sem nada para instalar. O curso interativo e gratuito de Git da Coddy também cobre o uso de branches do início ao fim.