Skip to main content

Git tools for Commitizen and PR Summary Generation using AI

Project description

Giji

Herramientas Git potenciadas por IA para optimizar tu flujo de trabajo de desarrollo. Crea commits inteligentes y pull requests con descripciones generadas por IA.

Características

  • 🤖 Commits Inteligentes: Genera automáticamente mensajes de commit convencionales usando IA
  • 📝 Pull Requests con IA: Crea PRs con descripciones generadas por IA
  • 🚀 Interfaz Simple: Comandos CLI fáciles de usar
  • ⚡️ Flujo Rápido: Automatiza tareas repetitivas de git

Instalación

pip install giji

Uso

Commits Inteligentes

Crea commits con mensajes convencionales generados por IA:

# Hacer commit de todos los cambios con mensajes inteligentes
giji commit

Pull Requests

Crea pull requests con descripciones generadas por IA:

# Crear un PR (auto-commit por defecto)
giji pr --base main

# Crear un PR sin auto-commit
giji pr --base main --no-commit

# Crear un PR borrador con ticket JIRA
giji pr --base main --draft --ticket SIS-123

Opciones

Comando PR

  • --base, -b: Rama base (ej: main, develop) [default: master]
  • --ticket, -t: Número de ticket JIRA (ej: SIS-290)
  • --draft: Crear PR como borrador
  • --no-commit: Omitir auto-commit de cambios

Requisitos

  • Python 3.7+
  • Git
  • GitHub CLI (gh)
  • API key de Gemini

Configuración del Entorno

  1. Obtén una API key de Gemini en Google AI Studio
  2. Configura la variable de entorno:
export GEMINI_API_KEY='your-api-key'

Licencia

MIT License - ver LICENSE para más detalles.

Contribuir

Las contribuciones son bienvenidas! Por favor, lee CONTRIBUTING.md para detalles sobre nuestro código de conducta y el proceso para enviar pull requests.

Soporte

Si encuentras algún problema o tienes una sugerencia, por favor crea un issue en el repositorio de GitHub.

Desarrollo

Construcción y Publicación

  1. Actualizar la versión en src/cz_ai_conventional/version.py:
VERSION = "x.y.z"  # Incrementar según cambios
  1. Construir el paquete:
# Instalar dependencias de desarrollo
pip install build twine

# Construir distribución
python -m build
  1. Publicar en PyPI:
# Configurar .pypirc con credenciales
python -m twine upload --config-file .pypirc dist/*

También puedes usar el Makefile incluido:

# Construir y publicar
make build

# Solo actualizar versión existente
make update

Flujo de Desarrollo

  1. Crear rama incluyendo el número de ticket JIRA

    El número de ticket se extraerá automáticamente de la rama. Formatos soportados:

    SIS-123                    ✓
    SIS-123/mi-feature        ✓
    feature/SIS-123           ✓
    fix/SIS-123-bug-fix       ✓
    feature/SIS-123/new-feat  ✓
    
  2. Realizar cambios y usar los comandos:

# Commit de cambios
giji commit

# Crear PR (detecta ticket automáticamente de la rama)
giji pr --base main

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

giji-0.1.17.tar.gz (23.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

giji-0.1.17-py3-none-any.whl (29.3 kB view details)

Uploaded Python 3

File details

Details for the file giji-0.1.17.tar.gz.

File metadata

  • Download URL: giji-0.1.17.tar.gz
  • Upload date:
  • Size: 23.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.6

File hashes

Hashes for giji-0.1.17.tar.gz
Algorithm Hash digest
SHA256 c3a8467cc70bc09a4d12a9326dcba1edc32a13a4e09a86b35a9361595ee48601
MD5 ec11999fa79f9190ceb7d78293080b93
BLAKE2b-256 685cf296fb5185b5303af80cf2c1c7d7180c6d1de39480090a99f8d95efecea7

See more details on using hashes here.

File details

Details for the file giji-0.1.17-py3-none-any.whl.

File metadata

  • Download URL: giji-0.1.17-py3-none-any.whl
  • Upload date:
  • Size: 29.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.6

File hashes

Hashes for giji-0.1.17-py3-none-any.whl
Algorithm Hash digest
SHA256 0f932500377c62123f0140687d087f94c4613bdf56eef608b4e2cadde446d23a
MD5 b104ff1c0580ccc710851d915d0c1d86
BLAKE2b-256 c9b555f7a7269b06bae6b9e1982de92a17fd244351fd8e62de063863a0e69510

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page