Control de versiones Git en cPanel
Control de versiones Git en cPanel
Git Version Control en cPanel te permite crear, clonar y gestionar repositorios Git directamente desde el panel de control. Puedes conectar tu sitio web con repositorios remotos en GitHub, GitLab o Bitbucket para desplegar cambios automaticamente.
1. Acceder a Git Version Control
- Inicia sesion en tu cuenta de cPanel.
- En la seccion Desarrollo, haz clic en Git™ Version Control.
- Veras la lista de repositorios existentes (si los hay) y la opcion de crear uno nuevo.
2. Crear un repositorio nuevo
Opcion A: Clonar un repositorio existente
- Haz clic en Crear.
- Selecciona Clonar un repositorio.
- Escribe la URL del repositorio (ejemplo:
https://github.com/usuario/mi-sitio.git). - En Ruta de referencia del repositorio, ingresa la ruta donde se clonara (ejemplo:
public_htmlo una subcarpeta comopublic_html/mi-proyecto). - Haz clic en Crear.
Consejo: Usa ramas especificas para produccion (como
mainomaster) para evitar clonar ramas de desarrollo.
Opcion B: Crear un repositorio vacio
- Haz clic en Crear.
- Selecciona Crear un repositorio nuevo.
- Escribe el nombre del repositorio (ejemplo:
mi-sitio). - En Ruta de referencia del repositorio, ingresa la ruta (ejemplo:
public_html). - Haz clic en Crear.
Esto inicializa un repositorio Git vacio en la ruta especificada.
3. Gestionar un repositorio existente
Desde la pagina principal de Git Version Control, haz clic en un repositorio para ver sus opciones:
- Detalles: Muestra la rama actual, la URL remota y la ruta local.
- Cambios pendientes: Archivos modificados, anadidos o eliminados que aun no se han commit.
- Historial: Lista de commits realizados con fecha, autor y mensaje.
- Cerrar: Elimina el registro del repositorio de cPanel (no borra los archivos).
4. Realizar commits desde cPanel
- Accede al repositorio desde Git Version Control.
- En la pestana Cambios pendientes, veras los archivos modificados.
- Marca los archivos que quieres incluir en el commit.
- Escribe un mensaje descriptivo del cambio.
- Haz clic en Commit.
Importante: Los commits realizados aqui son locales. Para sincronizar con un repositorio remoto, necesitas hacer push.
5. Conectar con GitHub, GitLab o Bitbucket
Paso 1: Obtener la URL remota
- En tu repositorio (GitHub, GitLab o Bitbucket), copia la URL HTTPS del repositorio.
- GitHub:
https://github.com/usuario/repositorio.git - GitLab:
https://gitlab.com/usuario/repositorio.git - Bitbucket:
https://bitbucket.org/usuario/repositorio.git
- GitHub:
Paso 2: Configurar la URL remota en cPanel
- Accede a tu repositorio en Git Version Control.
- Haz clic en Administrar y luego en Editar configuracion.
- En URL del repositorio remoto, pega la URL copiada.
- Guarda los cambios.
Paso 3: Autenticacion
Para repositorios privados, cPanel solicita credenciales:
- GitHub: Usa un Personal Access Token (no tu contrasena). Ve a GitHub, Settings, Developer settings, Personal access tokens y genera uno con permiso
repo. - GitLab: Usa un Personal Access Token. Ve a GitLab, Preferences, Access Tokens y crea uno con alcance
read_repositoryywrite_repository. - Bitbucket: Usa una App Password. Ve a Bitbucket, Personal settings, App passwords y crea una con permisos
Repositories: Read and Write.
6. Push y Pull de cambios
Push (subir cambios a GitHub/GitLab/Bitbucket)
- Accede al repositorio en cPanel.
- Haz clic en Push.
- Selecciona la rama a enviar.
- Ingresa las credenciales si es la primera vez (usuario + token).
- Confirma el push.
Pull (descargar cambios del repositorio remoto)
- Accede al repositorio en cPanel.
- Haz clic en Pull.
- Selecciona la rama remota a descargar.
- Confirma el pull.
Consejo: Antes de hacer pull, asegurate de no tener cambios locales sin commit para evitar conflictos de fusion.
7. Cambiar de rama
- En el repositorio, haz clic en Administrar y luego en Cambiar rama.
- Selecciona la rama que quieres usar.
- Haz clic en Cambiar.
cPanel actualizara los archivos del directorio para reflejar la rama seleccionada.
8. Deploy automatico con Webhooks
Puedes configurar un webhook en GitHub/GitLab/Bitbucket para que cada push actualice automaticamente tu sitio en cPanel:
- En cPanel, Git Version Control, selecciona tu repositorio.
- Copia la URL del webhook que aparece en la configuracion.
- En GitHub: Ve a tu repositorio, Settings, Webhooks, Add webhook.
- Payload URL: pega la URL de cPanel.
- Content type:
application/json. - Secret: dejalo vacio (cPanel no lo requiere).
- Marca Just the push event.
- Haz clic en Add webhook.
Cada vez que hagas push a GitHub, cPanel ejecutara un pull automatico.
9. Ruta de deployment
Si tu sitio web esta en public_html, asegurate de que la ruta de referencia del repositorio apunte a esa carpeta al crear o clonar el repositorio.
Si usas subdominios, la ruta sera algo como:
public_html/misubdominio
Si la ruta no coincide con la de tu sitio, los cambios no se reflejaran en la web hasta que copies los archivos manualmente o configures la ruta correctamente.
10. Solucion de problemas
| Problema | Solucion |
|---|---|
| Error al hacer push | Verifica que el token de acceso tenga permisos de escritura y que la URL remota sea correcta |
| Conflicto de fusion al hacer pull | Haz commit o stash de tus cambios locales antes de hacer pull |
| Los archivos no se actualizan en la web | Verifica que la ruta del repositorio coincida con public_html |
| No puedo clonar un repositorio privado | Usa un Personal Access Token, no tu contrasena |
| El repositorio no aparece en la lista | Haz clic en Actualizar en la pagina principal de Git Version Control |
| Credenciales rechazadas | Regenera el token de acceso; los tokens pueden expirar o ser revocados |
11. Consejos practicos
- Usa
.gitignore: Crea un archivo.gitignoreen la raiz de tu repositorio para excluir archivos sensibles (como.env, carpetas de node_modules, o archivos temporales). - No subas archivos sensibles: Nunca incluyas contrasenas, claves API o archivos de configuracion con datos de conexion a bases de datos en repositorios publicos.
- Trabaja con ramas: Crea ramas para nuevas funcionalidades y fusiona con
maincuando esten listas. - Haz commits frecuentes: Commits pequenos y descriptivos facilitan el seguimiento de cambios y la resolucion de conflictos.
- Usa mensajes de commit claros: Describe brevemente que cambio y por que (ejemplo: "Actualiza diseno del formulario de contacto").
12. Comandos Git utiles
Si necesitas usar la linea de comandos SSH para operaciones avanzadas, estos son los comandos mas comunes:
| Comando | Descripcion |
|---|---|
git status |
Muestra el estado actual del repositorio |
git add . |
Anade todos los cambios para commit |
git commit -m "mensaje" |
Crea un commit con un mensaje descriptivo |
git push origin main |
Envia los commits a la rama principal del repositorio remoto |
git pull origin main |
Descarga los cambios del repositorio remoto |
git log --oneline |
Muestra el historial de commits de forma resumida |
git branch |
Lista las ramas disponibles |
git checkout nombre-rama |
Cambia a otra rama |
git merge nombre-rama |
Fusiona una rama en la rama actual |
git stash |
Guarda los cambios temporalmente sin hacer commit |
Consejo: Si tu plan de hosting incluye acceso SSH, puedes usar estos comandos directamente desde la terminal para mayor flexibilidad.