He trabajado en una sucursal local y también empujé los cambios a remoto. Quiero revertir los cambios en esa rama y hacer algo más al respecto, pero no quiero perder el trabajo por completo. Estaba pensando en algo como crear una nueva rama localmente y copiar la rama vieja allí, luego puedo revertir los cambios y continuar trabajando en la rama vieja. ¿Hay una mejor manera tal vez? ¿O cómo hago esto?
270

git branch -c A B. Vea mi respuesta a continuaciónRespuestas:
Esto le dará una nueva rama "new_branch" con el mismo estado que "old_branch".
Este comando se puede combinar con lo siguiente:
fuente
git checkout -b new_branch(cuando ya estás enold_branch).Esto evita el acto potencialmente innecesario de perder una sucursal. Recuerde que un proceso de pago modifica el "árbol de trabajo", lo que podría llevar mucho tiempo si es grande o contiene archivos grandes (imágenes o videos, por ejemplo).
fuente
Con Git 2.15 (Q4 2017), "
git branch" aprendió "-c/-C" a crear una nueva sucursal copiando una existente.Ver commit c8b2cec (18 de junio de 2017) por Ævar Arnfjörð Bjarmason (
avar) .Ver commit 52d59cc , commit 5463caa (18 de junio de 2017) por Sahil Dua (
sahildua2305) .(Fusionada por Junio C Hamano -
gitster- en commit 3b48045 , 03 oct 2017)Nota: al copiar una rama, permanece en su rama actual.
Como explica Junio C Hamano:
fuente