Control de versiones con Git

MarkNode incluye compatibilidad integrada con Git para que puedas seguir los cambios, hacer commits y sincronizar con un remoto sin salir del editor.

Detección automática del repositorio

Cuando abres una carpeta como proyecto, MarkNode comprueba si contiene un repositorio Git. Si encuentra uno, las funciones de Git se activan automáticamente — sin necesidad de configuración. Si la carpeta no es un repositorio Git, las funciones de Git permanecen ocultas.

Barra de estado

La barra de estado en la parte inferior de la ventana muestra tu contexto actual de Git de un vistazo:

  • Nombre de la rama — la rama actualmente activa
  • Número de cambios — la cantidad de archivos modificados, añadidos o eliminados. Este número es clicable: haz clic en él para abrir el panel de Control de código fuente.

El indicador de rama se actualiza en tiempo real. Si cambias de rama desde el terminal u otra herramienta, la barra de estado refleja el cambio sin necesidad de recargar. Para los recuentos de commits por delante/por detrás y todas las acciones de Git, usa el panel de Control de código fuente que se describe a continuación.

El panel de Control de código fuente

Todas las acciones de Git residen en el panel de Control de código fuente — una vista de barra lateral basada en el conocido patrón de Control de código fuente de editores como VS Code. Ábrelo desde el icono de Control de código fuente en la barra de navegación (aparece después de Archivos recientes, solo cuando el proyecto es un repositorio Git) o pulsa Cmd+Shift+K en macOS o Ctrl+Shift+K en Windows y Linux.

El panel te ofrece todo en un solo lugar, sin que un diálogo modal bloquee tu editor:

  • Encabezado — el nombre de la rama actual y los recuentos de commits por delante/por detrás respecto al remoto
  • Archivos modificados — agrupados en Cambios preparados y Cambios (sin preparar), donde cada entrada muestra el nombre del archivo, la ruta y una letra de estado
  • Acciones en línea — pasa el cursor sobre un archivo para prepararlo o quitarlo del área de preparación; el encabezado Cambios tiene una acción Preparar todo y el encabezado Cambios preparados tiene una acción Quitar todo de preparación
  • Área de commit — un cuadro de mensaje y un botón Commit, habilitado una vez que tienes archivos preparados y has escrito un mensaje
  • Barra de herramientas — acciones Pull, Push y Actualizar

Indicadores de estado de archivo

El explorador de archivos colorea el nombre de cada archivo para indicar su estado en Git:

EstadoSignificado
ModificadoEl archivo tiene cambios sin confirmar todavía
AñadidoUn archivo nuevo que se ha preparado
Sin seguimientoUn archivo nuevo que aún no se ha preparado
EliminadoUn archivo con seguimiento que se ha eliminado
RenombradoUn archivo con seguimiento que se ha movido o renombrado
ConflictoEl archivo tiene conflictos de fusión por resolver

El estado se propaga hacia arriba por el árbol de carpetas — si algún archivo dentro de una carpeta tiene cambios, el nombre de la carpeta principal también se colorea (tomando el estado de mayor prioridad). Esto te permite detectar las áreas modificadas de tu proyecto sin tener que expandir cada directorio.

Confirmar cambios

La confirmación se realiza en línea en el panel de Control de código fuente — no hay un diálogo aparte:

  1. Prepara los archivos que quieras incluir pasando el cursor sobre cada uno y haciendo clic en la acción de preparar, o usa Preparar todo en el encabezado de la sección.
  2. Escribe un mensaje de commit en el cuadro de mensaje.
  3. Haz clic en Commit.

MarkNode ejecuta el commit en tu repositorio local, borra el cuadro de mensaje y actualiza la lista de archivos y el número de cambios de la barra de estado. Si el commit falla — por ejemplo, si un hook de pre-commit lo rechaza — el panel muestra el error y conserva tu mensaje de commit para que puedas volver a intentarlo.

Pull y push

Las acciones Push y Pull están en la barra de herramientas del panel de Control de código fuente.

  • Pull obtiene los últimos commits del remoto y los fusiona en tu rama actual
  • Push envía tus commits locales al remoto

Si el push es rechazado (por ejemplo, porque el remoto tiene commits que tú no tienes en local), tendrás que hacer pull primero y resolver los conflictos antes de volver a hacer push.

Archivos modificados fuera de MarkNode

Si modificas archivos desde el terminal u otro editor, MarkNode detecta los cambios y recarga los archivos afectados automáticamente. No necesitas actualizar manualmente el editor ni el explorador de archivos.

Esto también se aplica a las operaciones de Git — ejecutar git checkout, git merge o cualquier comando que modifique archivos del árbol de trabajo se reflejará de inmediato en el editor.