Solía git checkout -b
crear una nueva sucursal. Creo que eso git branch
hace lo mismo. ¿Cómo difieren estos dos comandos, si es que difieren en absoluto?
git
git-branch
git-checkout
Adrien Joly
fuente
fuente
Respuestas:
git checkout -b BRANCH_NAME
crea una nueva rama y comprueba la nueva rama mientrasgit branch BRANCH_NAME
crea una nueva rama pero te deja en la misma rama.En otras palabras,
git checkout -b BRANCH_NAME
hace lo siguiente para usted.fuente
git branch
crea la rama pero usted permanece en la rama actual que ha desprotegido.git checkout -b
crea una rama y la revisa.Podría considerarse una forma corta de:
fuente
git branch
: Muestra todas tus ramasgit branch newbranch
: Crea una nueva sucursalgit checkout -b newbranch
: Crea una nueva rama y cambia a esa rama inmediatamente. Esto es lo mismo quegit branch newbranch
seguido porgit checkout newbranch
.fuente
Sintaxis completa:
El [FROM_BRANCH] es opcional. Si no hay FROM_BRANCH, git usará la rama actual.
fuente
También hay otra bandera para mencionar, que es relativa a estos ...
Este es un comando muy útil que he estado usando recientemente. Este comando verifica la rama que especifique y restablece la rama en función de la rama de origen.
fuente
If -B is given, <new_branch> is created if it doesn't exist; otherwise, it is reset. This is the transactional equivalent of $ git branch -f <branch> [<start point>] $ git checkout <branch>
checkout -B
peligroso si la rama a la que te estás cambiando es compartida por otros? Utilicé esto recientemente y parecía fusionarse automáticamente en los cambios en mi otra rama a la rama a la que cambié.git checkout -B
luego hace un sí, se fusionaría, o posiblemente incluso reemplazaríaHay formas de ambos comandos que son similares (mirando git-scm docs Versión 2.11.1):
y
Este último ejecuta primero el comando de bifurcación y luego agrega el pago. En esa forma, se hace referencia explícita al documento de git-branch:
fuente
Esencialmente :
A-git branch te permite crear una rama simple y llanamente.
B -git checkout -b le permite crear una rama y cambiar a ella al mismo tiempo.
¿Cuándo usarás cuál? 1- git branch cuando quieras crear una rama pero mantente en la rama actual. 2- git checkout -b cuando quieras crear y cambiar. Si lo mira, es intuitivo crear una rama y cambiar a ella. Entonces la elección es tuya :)
fuente