viernes, 31 de octubre de 2025

Sistemas de control de versiones GIT

 Los sistemas de control de versiones (VCS) gestionan y rastrean los cambios de código a lo largo del tiempo, lo que facilita una colaboración eficiente. Registran los cambios en los archivos, permiten revertir a versiones anteriores y mantienen el historial de modificaciones. Pueden centralizarse (Subversion) o distribuirse (Git, Mercurial) para facilitar la colaboración y la integridad del código.

Git

Git es un sistema de control de versiones distribuido.
Esto significa que permite guardar el historial completo de los cambios que se hacen en un proyecto (por ejemplo, un sitio web o una aplicación), y además trabajar en equipo sin perder información.

En palabras simples:

Git registra cada cambio que hacés en tus archivos, para que puedas volver atrás, comparar versiones o colaborar con otros sin sobrescribir el trabajo ajeno.

🧩 Características principales:

  • 📜 Historial completo: Guarda todos los cambios realizados, quién los hizo y cuándo.

  • 🔁 Versiones: Podés volver a versiones anteriores del proyecto.

  • 👥 Trabajo colaborativo: Permite que varias personas trabajen sobre el mismo proyecto y luego integren sus aportes.

  • 🌍 Distribuido: Cada desarrollador tiene una copia completa del repositorio, no solo los archivos actuales sino todo el historial.

  • 💾 Seguridad: Los datos se almacenan y verifican mediante un algoritmo (SHA-1), lo que evita pérdidas o corrupción.

 Sitio oficial: https://git-scm.com/

🌐 ¿Qué es GitHub?

● Plataforma para alojar repositorios Git
● Funciona como red social profesional para desarrolladores
● Permite compartir, revisar y colaborar en proyectos
● Repositorios pueden ser públicos o privados

🛠 Herramientas necesarias

  • Editor de código: Visual Studio Code (recomendado), Atom, Sublime Text
  • Terminal: PowerShell, Terminal (Windows), iTerm (Mac), terminal estándar (Linux)
  • Git: Sistema de control de versiones. Descargar desde git-scm.com

📦 Flujo básico de trabajo

1. Crear repositorio local

git init

2. Crear archivo HTML base

<!DOCTYPE html>
<html lang="es">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Ejemplo de HTML para Git</title>
</head>
<body>
  <h1>Estoy aprendiendo Git</h1>
</body>
</html>

3. Verificar instalación de Git

git --version

4. Agregar archivo al área de preparación (stage)

git add ejemplo.html

5. Confirmar cambios (commit)

git commit -m "Mi primer commit"

6. Configurar identidad (si es la primera vez)

git config --global user.name "userGithub"
git config --global user.email "mailasdf@asdf.com"

🔄 Conexión con GitHub

  1. Crear repositorio en GitHub (sin README ni licencia)
  2. Conectar repositorio local con remoto
git remote add origin https://github.com/usuario/repositorio.git
git remote -v

3. Enviar cambios (push)

git push -u origin main

📥 Traer cambios del repositorio remoto

git fetch
git pull
git status

🧪 Revertir cambios y ver historial

git log
git revert SHA

📥 Clonar un repositorio existente

git clone https://github.com/usuario/repositorio.git .

El punto (.) evita crear una subcarpeta adicional.


 

🧠 Conceptos clave

  • Commit: Caja cerrada con cambios, mensaje y firma del autor
  • Stage: Área de preparación antes del commit
  • Push: Envío de cambios al repositorio remoto
  • Pull: Descarga de cambios desde el remoto
  • Fetch: Consulta de cambios sin descargarlos
  • Fork: Copia para modificar sin afectar el original
  • Clone: Descarga para trabajar bajo las reglas del proyecto 

 Ejercicios:

1 Versionar su sitio web

📚 Glosario técnico

TérminoDefinición
RepositorioCarpeta que contiene todos los archivos y el historial de cambios
CommitRegistro de cambios con mensaje y autoría
PushEnvío de cambios al repositorio remoto
PullDescarga de cambios desde el repositorio remoto
FetchConsulta de cambios disponibles sin descargarlos
StageÁrea de preparación antes de confirmar cambios
ForkCopia de un repositorio para modificarlo sin afectar el original
GitHub ActionsAutomatizaciones que se ejecutan sobre el código 

No hay comentarios:

Publicar un comentario