Diferencia entre Git Checkout --Track Origin/Branch y Git Checkout -B Branch Origin/Branch

John Wachira 20 junio 2023
Diferencia entre Git Checkout --Track Origin/Branch y Git Checkout -B Branch Origin/Branch

Este artículo describe la diferencia entre los comandos git checkout -b branch origin/branch y git checkout --track origin/branch. Usamos los dos comandos para verificar sucursales remotas en nuestros repositorios de Git.

Los dos comandos tienen el mismo resultado, pero la diferencia viene en el uso práctico, como veremos en breve.

Diferencia entre git checkout -b branch origin/branch y git checkout --track origin/branch

Para comprender la diferencia entre los dos comandos, exploraremos qué hace cada comando cuando se ejecuta en la terminal. Saltemos directamente.

el comando git checkout -b branch origen/branch

Si está bien versado con Git, debe saber que usamos el siguiente comando para pagar una sucursal remota.

$ git checkout <remotebranch>

El comando anterior creará una “sucursal remota” en nuestro repositorio local y comenzará a rastrear la sucursal remota llamada “sucursal remota” si su “origen” tiene la “sucursal remota”.

¿Qué pasa si nuestro repositorio local ya tiene una sucursal remota y queremos crear y rastrear un remoto con el mismo nombre? ¿Cómo hacemos esto?

Aquí es donde entra en juego nuestro comando git checkout -b branch origin/branch. Correremos:

$ git checkout -b remote-branch1 origin/remotebranch

El comando anterior creará una sucursal remota1 en nuestro repositorio local, rastreando la sucursal remota en nuestro origen. Ten en cuenta que origen es nuestro mando a distancia.

el comando git checkout --track origin/branch

El comando git checkout --track origin/branch configurará una rama llamada branch y la rastreará contra branch en nuestro control remoto. Suena como el comando anterior, ¿verdad?

La pregunta es, ¿cuándo debes usarlo?

Sería mejor usar el comando anterior si nuestro repositorio local contiene varios controles remotos con el mismo nombre de rama.

Veamos un ejemplo.

Supongamos que nuestro repositorio local tiene cuatro remotos con una rama llamada remotebranch. Como se muestra a continuación, podemos configurar una sucursal para rastrear uno de nuestros remotos, en este caso, origen.

$ git checkout --track origin/remotebranch

El comando anterior creará una rama local llamada sucursal remota y la rastreará contra sucursal remota en nuestro origen.

En pocas palabras, los comandos git checkout -b branch origin/branch y git checkout --track branch origin/branch tienen el mismo resultado, es decir, crear una rama para rastrear un control remoto.

La diferencia viene en el uso práctico de los dos, como discutimos.

John Wachira avatar John Wachira avatar

John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.

LinkedIn

Artículo relacionado - Git Checkout