A técnica Ana está desenvolvendo o projeto TJWeb com o apoio da ferramenta de versionamento Git. Prestes a iniciar uma nova tarefa de desenvolvimento, Ana decidiu criar em seu computador um novo branch local, chamado “dois”, a partir do branch de trabalho atual de TJWeb. Para criar o branch local “dois”, através da linha de comando, Ana deve executar o comando git com os argumentos:
- A)add -i dois;
Errada: `add -i` serve para adicionar arquivos ao stage de forma interativa, nao para criar branch.
- B)diff -u dois;
Errada: `diff -u` compara diferencas entre arquivos ou revisoes, nao cria branch.
- C)merge -n dois;
Errada: `merge -n` relaciona-se a fusao de historicos, nao a criacao de um branch novo.
- D)rebase -n dois;
Errada: `rebase -n` nao e o comando padrao para criar branch e ainda trata de rebase, nao de ramificacao inicial.
- E)checkout -b dois.
Certa: `checkout -b dois` cria o branch local `dois` e ja muda para ele a partir do branch atual.
Gabarito: E
Em Git, branch eh uma linha paralela de desenvolvimento. Quando voce quer começar uma tarefa nova sem mexer no trabalho atual, o caminho classico eh criar um novo branch a partir do branch em que voce esta agora. Isso isola as mudancas e deixa o projeto mais organizado, como se voce abrisse uma nova trilha sem abandonar a trilha principal. Na linha de comando, o comando mais tradicional para isso e `git checkout -b dois`. O `-b` diz para o Git criar o branch e, na mesma jogada, mudar para ele. Ou seja: voce nao cria apenas uma etiqueta nova, voce ja entra nela para trabalhar. Para esse tipo de operacao, a ideia de criar a partir do estado atual do branch em uso e exatamente o que a questao descreve. As outras opcoes misturam comandos de outras funcoes do Git. `add` serve para incluir arquivos na area de stage, `diff` compara alteracoes, `merge` junta historicos e `rebase` reescreve a base de commits. Nenhuma delas tem o objetivo de criar um branch local novo a partir do branch atual. Em prova, o ponto central e reconhecer a dupla "criar + trocar para o branch". A sintaxe `checkout -b` e um atalho muito cobrado para isso. Em versoes mais novas do Git, voce tambem pode encontrar `git switch -c dois`, mas entre as alternativas dadas a resposta correta e a que usa `checkout -b`.