rag-service/docs/info-git-por-correo.md

158 lines
3.4 KiB
Markdown

# Informacion de acceso a Git - Forgejo
**Proyecto:** RAG Service
**Ultima actualizacion:** 2026-09-22
**Ultima modificacion por:** Agente RAG 3
**Estado:** Activo
---
## Proposito
Este documento deja la informacion de acceso al repositorio Git de Forgejo para que cualquier agente pueda hacer commits y push cuando el usuario lo pida.
---
## Repositorio RAG
### URL remota
```text
ssh://git@git.por-correo.com:2222/paco/rag-service.git
```
### Datos de conexion
| Campo | Valor |
|-------|-------|
| Usuario | `git` |
| Host | `git.por-correo.com` |
| Puerto SSH | `2222` |
| Metodo de autenticacion | Clave publica SSH |
| Rama principal | `main` |
### Comandos habituales
```bash
# Ver estado del repositorio
git status --short --branch
# Añadir archivos al staging
git add <archivos>
# Hacer commit
git commit -m "<mensaje descriptivo>"
# Subir cambios al remoto
git push origin main
# Verificar despues del push
git status --short --branch
```
### Verificacion antes de commitear
Antes de hacer commit y push, verificar:
```bash
# Ver que archivos se van a incluir
git status --short
# Ver el diff de los cambios
git diff --stat
```
---
## Reglas de uso para agentes
### Lo que SI se debe hacer
1. **Verificar el estado antes de commitear**
- Revisar que solo se incluyen archivos relevantes para la tarea
- No mezclar cambios de diferentes tareas en un mismo commit
2. **Usar mensajes de commit descriptivos**
- Explicar el "por que" del cambio, no solo el "que"
- Ser conciso pero informativo
3. **Validar antes de push**
- Compilar el proyecto si aplica (`npm run build`, `npm run check`)
- Verificar que no hay errores de tipo o compilacion
4. **Documentar cambios relevantes**
- Actualizar documentacion si se introduce funcionalidad nueva
- Registrar cambios en `HISTORIAL_SESIONES.md` si corresponde
### Lo que NO se debe hacer
1. **No tocar configuracion global de Git**
```bash
# NO hacer esto
git config --global user.name "..."
git config --global user.email "..."
```
2. **No subir archivos sensibles**
- `.env.local`
- `.env.easypanel.local`
- credenciales
- claves privadas
- secretos de cualquier tipo
3. **No hacer force push a main**
```bash
# NUNCA hacer esto
git push --force origin main
```
4. **No commitear sin validacion**
- No subir codigo que no compila
- No subir cambios sin verificar `git status`
---
## Documentacion relacionada
- `RAG/docs/METODOLOGIA_ITERACION_Y_REDEPLOY.md` - Flujo de trabajo para iterar y desplegar
- `RAG/docs/DESPLIEGUE_EASYPANEL.md` - Informacion de despliegue en EasyPanel
---
## Referencia rapida para agentes
Cuando el usuario pida hacer commit y push:
1. **Verificar cambios**
```bash
git status --short
```
2. **Añadir archivos relevantes**
```bash
git add <archivos-de-la-tarea>
```
3. **Hacer commit con mensaje descriptivo**
```bash
git commit -m "Descripcion clara del cambio"
```
4. **Subir al remoto**
```bash
git push origin main
```
5. **Confirmar al usuario**
- Indicar que los cambios estan subidos
- Proporcionar el hash del commit
- Avisar si ya puede hacer deploy en EasyPanel (si aplica)
---
## Notas importantes
- La autenticacion se hace por clave publica SSH registrada en Forgejo
- No es necesario configurar usuario/email porque ya esta en la configuracion local del repo
- El puerto SSH es `2222`, no el estandar `22`
- El repo esta en el host `git.por-correo.com`