1
resposta

[Dúvida] Mudando de branch

Qual a diferença entre git checkout nome-da-branch para git switch nome-da-branch?

1 resposta

O git switch foi criado na versão 2.23.0 do Git (em 2019).

Two new commands "git switch" and "git restore" are introduced to split "checking out a branch to work on advancing its history" and "checking out paths out of the index and/or a tree-ish to work on advancing the current history" out of the single "git checkout" command.

Ou seja, é um comando novo criado, juntamente com o restore, com o objetivo de separar as funções "mudar para um branch" e "mudar o estado de um arquivo". Ambas as funções eram feitas pelo comando checkout, que fazia uma ou outra coisa dependendo do que você passava como parâmetros. Para acabar com (ou pelo menos diminuir) essa confusão, resolveram separar estas funções nos comandos switch e restore.