Andres Paez Fernando Vaca haciendo el push en la rama
Un proyecto Node.js moderno para gestión de flujos de trabajo Git.
Este proyecto implementa un sistema de gestión de flujos de trabajo Git, proporcionando herramientas y utilidades para optimizar el proceso de desarrollo colaborativo.
- ✅ Gestión automatizada de ramas
- ✅ Integración con flujos de trabajo Git Flow
- ✅ Validación de commits
- ✅ Herramientas de merge automatizado
- ✅ Reportes de estado del repositorio
- Node.js (versión 18 o superior)
- npm (versión 8 o superior)
- Git (versión 2.30 o superior)
# Clona el repositorio
git clone https://github.com/apaezdev/git-flow.git
# Navega al directorio del proyecto
cd git-flow
# Instala las dependencias
npm install
npm install -g git-flow
- Copia el archivo de configuración de ejemplo:
cp .env.example .env
- Edita el archivo
.env
con tus configuraciones:
# Configuración del repositorio
REPO_PATH=./
DEFAULT_BRANCH=main
DEVELOPMENT_BRANCH=develop
# Configuración de branches
FEATURE_PREFIX=feature/
HOTFIX_PREFIX=hotfix/
RELEASE_PREFIX=release/
# Inicializar git flow en el repositorio
npm run init
# Crear una nueva feature
npm run feature:start nombre-feature
# Finalizar una feature
npm run feature:finish nombre-feature
# Crear un hotfix
npm run hotfix:start version
# Crear un release
npm run release:start version
# Ejemplo: Crear una nueva característica
npm run feature:start user-authentication
# Ejemplo: Finalizar y mergear una característica
npm run feature:finish user-authentication
# Ejemplo: Crear un hotfix para bug crítico
npm run hotfix:start 1.2.1
asdasd
# Ejecutar todos los tests
npm test
# Ejecutar tests en modo watch
npm run test:watch
# Ejecutar tests con cobertura
npm run test:coverage
# Linter
npm run lint
# Formatear código
npm run format
git-flow/
├── src/
│ ├── commands/ # Comandos CLI
│ ├── utils/ # Utilidades
│ ├── config/ # Configuración
│ └── index.js # Punto de entrada
├── tests/ # Tests unitarios
├── docs/ # Documentación
├── .env.example # Ejemplo de configuración
├── .gitignore # Archivos ignorados por Git
├── package.json # Dependencias y scripts
└── README.md # Este archivo
¡Las contribuciones son bienvenidas! Por favor sigue estos pasos:
- Fork el proyecto
- Crea una rama para tu feature (
git checkout -b feature/nueva-caracteristica
) - Commit tus cambios (
git commit -am 'Agrega nueva característica'
) - Push a la rama (
git push origin feature/nueva-caracteristica
) - Abre un Pull Request
- Sigue las convenciones de código existentes
- Escribe tests para nuevas funcionalidades
- Actualiza la documentación según sea necesario
- Usa commits descriptivos siguiendo Conventional Commits
Script | Descripción |
---|---|
npm start |
Inicia la aplicación |
npm run dev |
Inicia en modo desarrollo |
npm test |
Ejecuta los tests |
npm run build |
Construye la aplicación |
npm run lint |
Ejecuta el linter |
npm run format |
Formatea el código |
- Interfaz web para gestión visual
- Integración con GitHub/GitLab APIs
- Soporte para múltiples repositorios
- Notificaciones por email/slack
- Métricas y analytics
- Compatibilidad limitada con versiones antiguas de Git
- Rendimiento en repositorios muy grandes
Este proyecto está bajo la licencia MIT. Ver el archivo LICENSE para más detalles.
- Sebastian Paez - Desarrollo inicial - apaezdev
- Equipo de Git Flow original
- Comunidad de Node.js
- Contribuidores del proyecto
- Issues: GitHub Issues
- Email: sebastian.paez@example.com
- Documentación: Wiki del proyecto
⭐ Si este proyecto te ha sido útil, ¡considera darle una estrella en GitHub!