Fundamentos de Git y control de versiones

1

¿Qué son Git y GitHub?

2

Configuración Inicial de Git: init y config

3

Comandos Básicos de Git: add, commit y log

4

Ramas y Fusión de Cambios: branch, merge, switch y checkout

5

Volviendo en el Tiempo en Git: reset y revert

6

Gestión de versiones: tag y checkout

7

Cómo Resolver Conflictos de Ramas en Git

8

Usando Git desde Visual Studio Code

Quiz: Fundamentos de Git y control de versiones

Introducción a GitHub

9

Por qué GitHub es clave para los Desarrolladores

10

Creación y configuración de cuenta de GitHub

11

¿Cómo integrar Git y GitHub en un flujo de trabajo profesional?

12

Gestión de Repositorios en GitHub

13

Productos de GitHub: precios, planes y apps

14

Cómo configurar SSH para GitHub: Guía paso a paso

15

Clone, fork y estrellas a repositorios

16

Trabajo con repositorios remotos: push, pull y fetch

17

Gestión de Issues y Discussions en GitHub

18

Colaboración sin errores: Pull Requests en GitHub

Quiz: Introducción a GitHub

Herramientas de colaboración en GitHub

19

Introducción a GitHub Projects

20

Automatización y Gestión de Proyectos en GitHub

21

Documentación en GitHub con Markdown

22

Personaliza tu Perfil de GitHub con Markdown

23

Uso de Wikis

24

Cómo usar GitHub Gist

25

Cómo usar GitHub Pages

Quiz: Herramientas de colaboración en GitHub

GitHub Codespaces

26

Cómo usar GitHub Codespaces: Configuración y Desarrollo en la Nube

27

Cómo configurar entornos de desarrollo avanzados en GitHub Codespaces

28

Pair Programming con Codespaces y Visual Studio Code

29

Cómo usar GitHub.dev Editor

Quiz: GitHub Codespaces

Seguridad y buenas prácticas en GitHub

30

Cómo Usar Tokens en GitHub para Acceso Seguro a Repositorios Privados

31

Gestión de Dependencias y Seguridad con Dependabot en GitHub

32

Mantenimiento de repositorios seguros

33

Gestión de datos sensibles y políticas de seguridad

Quiz: Seguridad y buenas prácticas en GitHub

Administración de GitHub

34

Administración de organizaciones en GitHub

35

Cómo personalizar tu perfil de GitHub con GitHub Actions

36

GitHub CLI para administración

Quiz: Administración de GitHub

Gestión de Cambios con Pull Requests

37

Importancia de los Pull Requests y Ramas en GitHub

38

Revisión y Fusión de Pull Requests

39

Git Rebase

Quiz: Gestión de Cambios con Pull Requests

GitHub Releases

40

Introducción a los GitHub Releases

41

Publicación de paquetes en GitHub y PyPI

Quiz: GitHub Releases

Cierre

42

ProTips: Mejora tu productividad diaria en GitHub

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Cómo configurar entornos de desarrollo avanzados en GitHub Codespaces

27/42
Recursos

Los Codespaces de GitHub permiten una experiencia de desarrollo altamente personalizable sin necesidad de configurar entornos locales, gracias a su integración de plantillas y configuraciones específicas. Aquí exploramos cómo aprovechar al máximo estas plantillas, como una basada en Django con Python, y cómo ajustar la configuración para mejorar la experiencia en proyectos colaborativos o personales.

¿Cómo encontrar y utilizar plantillas de Codespaces?

  1. Accede a tus Codespaces en github.com/codespaces para ver todos los entornos que has creado.
  2. En lugar de crear un Codespace desde cero, selecciona una plantilla. Por ejemplo, puedes usar una con Django, lo cual permite omitir configuraciones iniciales, ya que la plantilla incluye todo lo necesario.
  3. Las plantillas permiten crear un entorno en blanco o preconfigurado para un lenguaje o framework específico, sin necesidad de cuestionarios de configuración.

¿Cómo configurar y editar un Codespace en tiempo real?

  • Al crear un proyecto con una plantilla, como Django, puedes modificar el código en tiempo real. Los cambios, como actualizar el texto en un archivo HTML, se reflejan sin necesidad de compilar, como sería el caso en entornos .NET.
  • Para probar la visibilidad de tu proyecto, puedes copiar la URL pública que se genera para compartir avances en tiempo real.

¿Qué configuraciones están disponibles en el archivo devcontainer.json?

Dentro de cada plantilla, encontrarás una carpeta .devcontainer que contiene el archivo devcontainer.json. Este archivo:

  • Define el entorno que tu Codespace utilizará, configurando lenguajes y herramientas específicos, como Python en el caso de un proyecto Django.
  • Permite agregar extensiones de Visual Studio Code necesarias para el proyecto. Por ejemplo, al agregar la extensión “Live Share”, puedes activarla en el archivo devcontainer.json para que esté disponible en futuras sesiones.

¿Cómo optimizar el desarrollo remoto en Visual Studio Code Desktop?

  1. Usa la opción “Abrir en Visual Studio Code Desktop” para una experiencia completa de edición fuera del navegador.
  2. Instala la extensión de GitHub Codespaces en Visual Studio si es la primera vez que usas este entorno.
  3. Asegúrate de que tu Codespace solo se ejecute en un entorno a la vez (navegador o desktop), para evitar conflictos de puerto.
  4. Puedes controlar el estado del servidor desde la terminal en cualquiera de los entornos, y detener la aplicación con Control-C para reiniciar el servidor cuando sea necesario.

¿Por qué utilizar plantillas preconfiguradas en Codespaces?

  • Las plantillas permiten explorar nuevas tecnologías sin necesidad de configurarlas en tu equipo local. Esto es útil para probar frameworks o lenguajes sin modificar entornos personales.
  • Ejemplos de plantillas populares incluyen Jupyter para análisis de datos, Node para desarrollo de aplicaciones web, y Django para aplicaciones con Python.

Usando estas plantillas, puedes acelerar la curva de aprendizaje y concentrarte en el desarrollo sin preocuparte por la configuración inicial.

Aportes 4

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

codespaces es muy cool! Hay que tener cuidado al conectarse a el desde el vs code local, ya que seguira consumiendo recursos!
Las ventajas de usar entornos de desarrollo avanzados en GitHub Codespaces incluyen: 1. **Configuración rápida**: Permite crear entornos preconfigurados con solo un clic, ahorrando tiempo. 2. **Accesibilidad**: Puedes acceder a tu entorno desde cualquier lugar con conexión a internet. 3. **Colaboración**: Facilita la colaboración en tiempo real con otros desarrolladores. 4. **Integración**: Funciona perfectamente con GitHub y sus herramientas, como pull requests e issues. 5. **Personalización**: Puedes añadir extensiones y personalizar tu entorno según tus necesidades. Estos beneficios mejoran la productividad y simplifican el flujo de trabajo en proyectos de software.
# **🚀 Configuración de Entornos de Desarrollo Avanzados en GitHub Codespaces** **GitHub Codespaces** permite personalizar el entorno de desarrollo utilizando **containers de desarrollo (Dev Containers)**. Esto es útil para proyectos complejos que requieren herramientas específicas, dependencias o configuraciones avanzadas. ## **1️⃣ Habilitar GitHub Codespaces en un Proyecto** Antes de personalizar el entorno, asegúrate de que GitHub Codespaces está habilitado en tu repositorio: 1. Ve a tu repositorio en GitHub. 2. Haz clic en el botón **"Code"** y selecciona la pestaña **"Codespaces"**. 3. Crea un nuevo Codespace en la rama principal (`main`). ## **2️⃣ Personalizar el Entorno con un Dev Container** Para configurar un entorno avanzado, debes agregar un **devcontainer** a tu repositorio. ### 📌 **Paso 1: Crear la Carpeta de Configuración** En la raíz del repositorio, crea una carpeta llamada `.devcontainer/` y dentro de ella, un archivo llamado `devcontainer.json`. ### 📌 **Paso 2: Definir la Configuración del Contenedor** Aquí tienes un ejemplo de `devcontainer.json` para un entorno de desarrollo con **Python 3.9 y Node.js**: { "name": "Mi Entorno de Desarrollo", "image": "mcr.microsoft.com/devcontainers/python:3.9", "features": { "ghcr.io/devcontainers/features/node:1": {} }, "extensions": \[ "ms-python.python", "ms-vscode.vscode-typescript-tslint-plugin" ], "postCreateCommand": "pip install -r requirements.txt" } 🔹 **Explicación:** ✅ Usa una imagen de contenedor con **Python 3.9**. ✅ Agrega soporte para **Node.js**. ✅ Instala extensiones de VS Code. ✅ Ejecuta `pip install -r requirements.txt` después de crear el Codespace. ## **3️⃣ Configurar Variables de Entorno** Si tu proyecto necesita credenciales o claves API, puedes agregarlas en `devcontainer.json`: "remoteEnv": { "API\_KEY": "tu\_clave\_aqui" } También puedes definirlas en **GitHub Secrets** para mayor seguridad. ## **4️⃣ Instalar Dependencias Automáticamente** Puedes agregar un script de configuración en `.devcontainer/postCreateCommand.sh` para instalar dependencias automáticamente: \#!/bin/bash echo "Instalando dependencias..." pip install -r requirements.txt npm install Luego, agrégalo en `devcontainer.json`: "postCreateCommand": "./.devcontainer/postCreateCommand.sh" ## **5️⃣ Trabajar con Bases de Datos y Servicios** Si tu proyecto necesita **MySQL, PostgreSQL o Redis**, puedes definirlos en `.devcontainer/docker-compose.yml`: version: '3' services: db: image: postgres:13 restart: always environment: POSTGRES\_USER: user POSTGRES\_PASSWORD: password POSTGRES\_DB: mydatabase Y en `devcontainer.json`: "dockerComposeFile": ".devcontainer/docker-compose.yml", "service": "app" ## **🎯 Conclusión** ✅ **GitHub Codespaces** permite configurar entornos avanzados sin necesidad de instalar nada localmente. ✅ Puedes personalizar el entorno con **Dev Containers**, instalar dependencias automáticamente y conectar servicios externos. ✅ Esto es ideal para proyectos complejos, colaborativos y con necesidades específicas de configuración.
Al crear un nuevo codespaces preconfigurado no elegimos ningun repositorio, pero ¿crea un repositorio que podamos clonar para trabajar en el mismo localmente? Es para hacer pruebas con otra cuenta en local para simular trabajo en conjunto y probar.