Recursos GIIADE
← Herramientas
Exclusivo para Linux · Rust Nativo · Zero-Lag

05 //
GitVanguard

Controlador Git TUI de alto rendimiento para Linux. Desarrollado en Rust para máxima velocidad de respuesta sin sobrecargas de recolección de basura, integrando Sentinel Shield (escáner anti-fugas de credenciales), Time Machine (explorador visual del reflog con restauración en 1 tecla) y soporte integral de Git Worktrees.

curl -fsSL https://raw.githubusercontent.com/Ismael-Sallami/git-vanguard/main/install.sh | bash
vanguard — ~/Escritorio/GitHub/proyecto (Linux x86_64)
╭────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ GITVANGUARD v0.1 │ [1. Archivos] │ 2. Ramas │ 3. Historial │ 4. Worktrees │ 5. Stash │ 6. Time Machine │
├──────────────────────────────────────────┬─────────────────────────────────────────────────────────────┤
│ Cambios de Trabajo [Unstaged: 2]         │ Inspección de Diferencias (Diff)                            │
│ * [M] src/main.rs                        │    1 │ diff --git a/src/main.rs b/src/main.rs               │
│   [?] .env.local                         │    2 │ --- a/src/main.rs                                    │
│                                          │    3 │ +++ b/src/main.rs                                    │
├──────────────────────────────────────────┤    4 │ @@ -45,3 +45,9 @@                                    │
│ Cambios Preparados [Staged: 1]           │    5 │ // Sentinel Shield: verificación activa              │
│ * [M] src/sentinel.rs                    │    6 │ +pub fn scan_diff(diff: &str) -> Vec<Finding>        │
│                                          │    7 │ +    let compiled = get_compiled_rules();            │
╰──────────────────────────────────────────┴─────────────────────────────────────────────────────────────╯
  Tab: Pestaña │ Space: Stage/Checkout │ c: Commit │ C: Conv. Commit │ U: Rebobinar │ q: Salir

Ingeniería Superior para Desarrolladores Linux

Construido pensando en flujos de trabajo profesionales donde la velocidad, la seguridad del código fuente y la ergonomía del teclado son fundamentales.

01

Sentinel Shield

Escáner heurístico pre-commit que inspecciona en tiempo real diffs preparados para interceptar claves OpenAI, AWS, GitHub PATs, llaves RSA y ficheros .env antes de que salgan a la luz.

02

Time Machine (Reflog)

Navega por la historia completa de operaciones de Git (rebases fallidos, resets o merges). Previsualiza el diff exacto de cada salto en el tiempo y rebobina el repositorio con la tecla U.

03

Worktrees Command Hub

Gestión de primera clase para Git Worktrees. Crea árboles de trabajo paralelos para revisar PRs o probar ramas sin perder tu estado de trabajo local en la terminal activa.

04

Rendimiento en Rust

Desarrollado sobre ratatui y crossterm. Renderiza frames en menos de 5 ms, inicia en frío en <10 ms y consume una fracción de memoria en repositorios con decenas de miles de commits.

05

Conventional Commits

Asistente modal guiado paso a paso para tipos estándar (feat, fix, perf, refactor), ámbitos contextuales y contador de caracteres con aviso de la regla 50/72.

06

Zombie Branch Pruner

Detecta automáticamente qué ramas locales ya han sido fusionadas e incorporadas en main o master, permitiendo purgarlas en lote con confirmación protegida.

Especificaciones Técnicas y Arquitectura

Criterio Técnico Implementación en GitVanguard Beneficio Operativo para el Desarrollador
Tiempo de Frame & Latencia Ultra-rápido (< 5 ms) sin pausas de runtime ni recolección de basura. Fluidez inmediata incluso en repositorios masivos con decenas de miles de commits.
Prevención de Fugas de Secretos Sentinel Shield nativo con inspección estricta de entropía y firmas criptográficas. Detección previa al commit de claves AWS, OpenAI, GitHub tokens y variables sensibles.
Navegación Histórica de Reflog Time Machine con previsualización de diffs y Undo en 1 tecla. Recuperación instantánea de ramas eliminadas, rebases fallidos o resets accidentales.
Soporte Git Worktrees Centro de mando nativo con vista dedicada para crear, vincular y desvincular. Trabajo paralelo en múltiples ramas sin necesidad de stashes ni cambios de contexto disruptivos.
Asistente Conventional Commits Wizard semántico guiado con contador estándar de 50/72 caracteres. Historial de git limpio, ordenado y compatible con generadores automáticos de changelog.
Integración con el Sistema Linux Soporte nativo para Wayland (wl-copy), X11 (xclip) y terminales OSC 52. Copia directa de hashes, mensajes y rutas sin dependencias gráficas externas.

Hoja de Referencia de Atajos (Cheat Sheet)

Tab / 1 .. 6 Cambiar entre las 6 pestañas principales (Archivos, Ramas, Commits, Worktrees, Stash, Time Machine)
j / k (o ↓ / ↑) Mover el cursor verticalmente por la lista de elementos activos
h / l Alternar foco entre cambios Unstaged y Staged en el panel de Archivos
Space Preparar o despreparar archivo (Stage/Unstage) o cambiar de rama activa (Checkout)
a / u Preparar todos los cambios (git add -A) o despreparar todos (git reset)
c / C Commit rápido estándar / Asistente guiado Conventional Commits
p / P Ejecutar git pull / git push
f Sincronizar remotos en segundo plano (git fetch --all --prune)
z Zombie Branch Pruner: detectar y purgar ramas locales ya integradas
U Time Machine Restore: rebobinar el repositorio al registro seleccionado del reflog
? / q Abrir modal de ayuda contextual / Salir de GitVanguard restaurando la terminal

Compilación Manual y Filosofía Técnica

GitVanguard prescinde de librerías intermedias que reimplementan Git parcialmente (como libgit2), comunicándose de manera asíncrona mediante subprocesos POSIX optimizados directamente con el binario git de tu distribución Linux. Esto asegura compatibilidad al 100% con tus llaves SSH, claves criptográficas GPG de firma de commits, filtros Git LFS y configuraciones de ~/.gitconfig.

# Compilación nativa desde el código fuente
git clone https://github.com/Ismael-Sallami/git-vanguard.git
cd git-vanguard
cargo build --release
cp target/release/vanguard ~/.local/bin/
ln -sf ~/.local/bin/vanguard ~/.local/bin/gv