Habilidades git-advanced-workflows
📦

git-advanced-workflows

Seguro

Domina los Flujos de Trabajo Avanzados de Git

También disponible en: wshobson

Los desarrolladores tienen dificultades con operaciones complejas de Git como la reescritura del historial y la recuperación de errores. Esta habilidad proporciona una guía completa sobre comandos avanzados de Git incluyendo rebase, cherry-pick, bisect, worktrees y reflog para mantener un historial limpio y recuperarse de cualquier situación.

Soporta: Claude Codex Code(CC)
🥉 72 Bronce
1

Descargar el ZIP de la skill

2

Subir en Claude

Ve a Configuración → Capacidades → Skills → Subir skill

3

Activa y empieza a usar

Pruébalo

Usando "git-advanced-workflows". How do I clean up my commit history before creating a pull request?

Resultado esperado:

Usa rebase interactivo para limpiar tus commits. Ejecuta 'git rebase -i main' para editar tus últimos commits. Puedes squashear (s) múltiples commits juntos, reescribir (r) mensajes de commit, o eliminar (d) commits innecesarios. Siempre crea una rama de respaldo primero con 'git branch backup-branch' antes de reescribir el historial.

Usando "git-advanced-workflows". I accidentally reset my branch and lost my commits. How can I recover them?

Resultado esperado:

Usa git reflog para encontrar tus commits perdidos. Ejecuta 'git reflog' para ver un historial de todas las actualizaciones de ref. Encuentra el hash del commit antes del reset, luego recupera con 'git reset --hard <commit-hash>' o crea una rama con 'git branch recovered-branch <commit-hash>'. Reflog mantiene el historial por 90 días.

Auditoría de seguridad

Seguro
v1 • 2/25/2026

All static findings are false positives. The skill is a documentation guide for Git commands - the flagged 'external_commands' are Git examples in markdown code blocks, 'filesystem' findings are legitimate worktree relative paths, and 'weak cryptographic algorithm' was a misidentification. This is safe, legitimate educational content.

1
Archivos escaneados
415
Líneas analizadas
0
hallazgos
1
Auditorías totales
No se encontraron problemas de seguridad

Patrones detectados

External Command Detection (False Positive)Path Traversal Detection (False Positive)Cryptographic Algorithm Detection (False Positive)
Auditado por: claude

Puntuación de calidad

38
Arquitectura
100
Mantenibilidad
87
Contenido
32
Comunidad
100
Seguridad
100
Cumplimiento de la especificación

Lo que puedes crear

Limpiar rama de función antes de pull request

Usar rebase interactivo para squashear, reordenar y limpiar mensajes de commit antes de mergear a la rama main

Encontrar punto de introducción de bug

Usar búsqueda binaria de git bisect para localizar rápidamente qué commit introdujo una regresión

Recuperarse de errores de Git

Usar reflog para recuperar commits o ramas que fueron accidentalmente eliminadas o reseteadas

Prueba estos prompts

Guía de rebase interactivo
Help me use interactive rebase to clean up my feature branch. I want to squash my last 5 commits into one clean commit with a good message.
Cherry-pick de un commit
How do I cherry-pick a specific commit from another branch onto my current branch? The commit hash is abc123.
Encontrar commit con bug
I need to find which commit introduced a bug. How do I use git bisect to systematically search through my commit history?
Configuración de worktree
Show me how to set up a Git worktree so I can work on a hotfix while keeping my current feature work intact.

Mejores prácticas

  • Siempre crea una rama de respaldo antes de realizar operaciones destructivas de Git como rebase o reset
  • Usa --force-with-lease en lugar de --force cuando hagas push de historial reescrito para prevenir sobrescribir el trabajo de otros
  • Ejecuta tests después de operaciones de rebase para asegurar que el historial reescrito no rompió ninguna funcionalidad

Evitar

  • Hacer rebase de ramas públicas que otros desarrolladores ya han descargado - esto causa conflictos de historial para los colaboradores
  • Usar 'git push --force' sin verificar si otros han hecho push de nuevos cambios al remoto
  • Ejecutar git bisect en un directorio de trabajo sucio sin staging o stashing de cambios primero

Preguntas frecuentes

¿Cuál es la diferencia entre rebase y merge?
Rebase reescribe el historial de commits para aplicar tus commits encima de otra rama, creando un historial lineal. Merge combina ramas sin cambiar el historial. Usa rebase para limpieza local antes de hacer push, usa merge para integrar trabajo completado en ramas compartidas.
¿Cuándo debo usar cherry-pick en lugar de merge?
Usa cherry-pick cuando solo necesitas commits específicos de otra rama, no todo el historial de la rama. Esto es útil para aplicar hotfixes a múltiples ramas de release sin mergear todos los cambios.
¿Cómo funciona git bisect?
Git bisect usa búsqueda binaria para encontrar el commit que introdujo un bug. Marcas un commit malo conocido y uno bueno, luego Git hace checkout de commits intermedios. Pruebas cada uno y marcas bueno o malo hasta encontrar el primer commit malo.
¿Qué es un Git worktree y cuándo debo usarlo?
Un worktree te permite hacer checkout de múltiples ramas simultáneamente en diferentes directorios. Úsalo cuando necesitas trabajar en múltiples funciones o fixes a la vez sin hacer stash de tu trabajo actual.
¿Cuánto tiempo mantiene reflog el historial de commits eliminados?
Reflog mantiene el historial por 90 días por defecto, o hasta que el ref es garbage collected. Esto proporciona una red de seguridad para recuperar commits o ramas perdidas dentro de este período.
¿Es seguro reescribir el historial de Git?
Reescribir el historial es seguro para ramas locales que no han sido compartidas. Para ramas compartidas, solo reescribe si es absolutamente necesario y siempre usa 'git push --force-with-lease' para evitar sobrescribir el trabajo de otros.

Detalles del desarrollador

Estructura de archivos

📄 SKILL.md