Mover Commits para um Novo Branch

Beginner

This tutorial is from open-source community. Access the source code

Introdução

Git é um poderoso sistema de controle de versão que permite aos desenvolvedores acompanhar as alterações feitas em seu código-base. Uma das funcionalidades úteis do Git é a capacidade de mover commits de um branch para outro. Isso pode ser útil quando você percebe que algumas alterações que fez no branch master deveriam ter sido feitas em um branch separado. Neste laboratório, você aprenderá como mover commits do branch master para um novo branch.

Mover Commits para um Novo Branch

Para este laboratório, vamos usar o repositório de https://github.com/labex-labs/git-playground. Você tem trabalhado em um projeto no branch master. Você percebe que algumas das alterações que fez deveriam ter sido feitas em um branch separado. Você quer mover essas alterações para um novo branch chamado feature.

  1. Clone o repositório, navegue até o diretório e configure a identidade:
git clone https://github.com/labex-labs/git-playground
cd git-playground
git config --global user.name "your-username"
git config --global user.email "your-email"
  1. Faça o checkout do branch master:
git checkout master
  1. Crie um arquivo chamado hello.txt, adicione "hello, world" a ele, adicione-o à área de staging (staging area) e faça o commit com a mensagem "Added hello.txt":
echo "hello,world" >> hello.txt
git add .
git commit -m "Added hello.txt"
  1. Crie um novo branch chamado feature sem mudar para ele. Quando você cria um novo branch no branch master, o estado do novo branch é o mesmo do branch master, ou seja, os arquivos no novo branch são os mesmos dos arquivos no branch master, com o mesmo conteúdo e histórico de versões:
git branch feature
  1. Desfaça o último commit no master:
git reset HEAD~1 --hard
  1. Verifique o histórico de commits no branch master e o histórico de commits no branch feature para verificar os resultados:
git log
git checkout feature
git log

Este é o resultado da execução de git log:

commit 7969ab5d6606e2a40c9fd826c732206b835976e9 (HEAD -> feature)
Author: xiaoshengyunan <@users.noreply.github.com>
Date:   Fri Jul 21 20:19:22 2023 +0800

    Added hello.txt

Resumo

Mover commits de um branch para outro pode ser um recurso útil ao trabalhar com Git. Neste laboratório, você aprendeu como mover commits do branch master para um novo branch usando os comandos git branch, git reset e git checkout. Lembre-se que isso só funciona se as alterações tiverem sido commitadas localmente e não enviadas para o remoto.