Comandos do Git

git checkout

git checkout: fazer checkout de uma branch ou restaurar arquivos do diretório de trabalho.

Observação: Este comando saiu de moda em favor dos comandos mais específicos git switch e git restore, introduzidos no Git 2.23 (agosto de 2019). Esses novos comandos buscam tornar o funcionamento do Git mais intuitivo e reduzir o risco de perda acidental de dados.

O git checkout é um comando versátil: serve para navegar entre branches, restaurar arquivos e trocar para commits específicos. Nas versões recentes do Git, porém, muitas dessas funções foram divididas entre dois comandos mais claros e focados: git switch e git restore.

Na prática, o git checkout é usado principalmente para trocar de branch ou restaurar arquivos a um estado anterior. Com ele, os desenvolvedores podem alternar com facilidade entre diferentes funcionalidades ou correções de bugs e desfazer alterações em arquivos quando um erro ou experimento não dá certo.

Por que esse comando se chama "checkout"?

Exemplos

Troque para uma branch existente:

git checkout feature-branch

Crie uma nova branch e troque para ela imediatamente:

git checkout -b new-feature

Restaure um arquivo ao estado do último commit. Repare que a opção especial -- é usada para dizer ao Git que todos os argumentos seguintes são caminhos de arquivo. Isso é necessário para evitar ambiguidade quando um caminho de arquivo pode ser confundido com uma branch ou um commit:

git checkout -- path/to/file.js

Troque para um commit específico (estado detached HEAD, ou seja, você não está em nenhuma branch):

git checkout 1a2b3c4d

Mas, nas versões mais novas do Git (2.23+), a recomendação é usar git switch para trocar de branch e git restore para restaurar arquivos. Essa separação de responsabilidades torna os comandos mais intuitivos e menos propensos a erros.

Troque para uma branch existente (Git 2.23+):

git switch feature-branch

Crie uma nova branch e troque para ela (Git 2.23+):

git switch -c new-feature

Restaure um arquivo ao estado do último commit (Git 2.23+):

git restore path/to/file.js

Resumindo: embora o git checkout ainda seja muito usado e continue com suporte, é uma boa prática começar a usar git switch e git restore para ações mais claras e específicas no seu fluxo de trabalho com o Git. Isso ajuda a evitar confusões e possíveis erros, principalmente para quem está começando no Git.