Branches e HEAD
Até agora trabalhamos em uma única linha de histórico. Mas e se você quiser testar uma ideia nova sem mexer no código que funciona? É aí que entram os branches. O grande segredo: um branch não é uma cópia pesada do projeto — é só uma etiqueta leve que aponta para um commit específico, por isso criar
Um branch é como um post-it que você desliza ao longo da corrente de fotos do seu projeto — ele só marca uma foto específica. HEAD é a seta que diz em qual post-it você está agora.
- Branch
- Uma etiqueta leve e móvel que aponta para um commit. Criar um branch é só criar um arquivinho que guarda o hash do commit, por isso é instantâneo e quase não ocupa espaço.
- HEAD
- Um ponteiro especial que diz 'você está aqui' — em qual branch (e, através dele, em qual commit) você está agora.
- git switch
- Muda entre branches. git switch -c <nome> cria um branch novo e te move para ele. (O comando mais antigo e equivalente é git checkout -b.)
- main
- O nome comum para o branch principal em repositórios novos (antigamente master). É só um branch normal — não há nenhuma mágica especial nele para o Git.
- git branch
- Sem argumento — lista os branches, com um asterisco (*) ao lado do ativo. Com um nome — cria um branch novo sem mudar para ele.