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.15.tar.gz (21.3 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.15-py3-none-any.whl (26.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: giji-0.1.15.tar.gz
  • Upload date:
  • Size: 21.3 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.15.tar.gz
Algorithm Hash digest
SHA256 e7e5acb40d7a91932ec261ed2169019879c935432af264ab7cff5ddb133af34e
MD5 bd5e5f1440b2032e6edc3015bcb639b2
BLAKE2b-256 ebe68fcf29f2e7598c9cd5e005ed715f75c028dc717a96d344d94d186df5a572

See more details on using hashes here.

File details

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

File metadata

  • Download URL: giji-0.1.15-py3-none-any.whl
  • Upload date:
  • Size: 26.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.15-py3-none-any.whl
Algorithm Hash digest
SHA256 28f4843414d5c1bc4c5471be33aa6c9fa789064400c19325e08db5dc030ddcb6
MD5 eb739f8d3227b6fa021c6fd0b8fd5a9a
BLAKE2b-256 57410ba28583f229d0ac003b8363cf4234b08336931c9c56859306b8fc7b66c9

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