├── 01-crear-repo.md
├── 02-clonar-vscode.md
├── 03-rama-calculadora.md
├── 04-pull-request-basico.md
├── 05-crear-issue.md
├── 06-rama-issue.md
├── 07-readme-proyecto.md
├── 08-discusion.md
└── README.md
/01-crear-repo.md:
--------------------------------------------------------------------------------
1 | # Paso 1: Crear un Repositorio Público
2 |
3 | 1. Ve a [github.com](https://github.com) e inicia sesión.
4 | 2. Haz clic en `+` (arriba a la derecha) y selecciona **New repository**.
5 | 3. Asigna un nombre como `matematicas`.
6 | 4. Marca el repositorio como **Public**.
7 | 5. Opcional: Añade un README inicial y una licencia.
8 | 6. Haz clic en **Create repository**.
9 |
10 | [Siguiente paso: Clonar el repositorio y abrir en VS Code »](02-clonar-vscode.md)
11 |
--------------------------------------------------------------------------------
/02-clonar-vscode.md:
--------------------------------------------------------------------------------
1 | # Paso 2: Clonar y Abrir en VS Code
2 |
3 | 1. Copia la URL del repositorio (`Code > HTTPS`).
4 | 2. Abre la terminal y ejecuta:
5 |
6 | ```bash
7 | git clone https://github.com/tu_usuario/calculadora-js.git
8 | cd calculadora-js
9 | ```
10 |
11 | 3. Abre VS Code con:
12 |
13 | ```bash
14 | code .
15 | ```
16 |
17 | 4. creamos el archivo `calculadora.js`
18 | ```bash
19 | touch calculadora.js
20 | ```
21 |
22 | 5. lo agregamos para que `GIT` le haga seguimiento, luego confirmamos el cambio con `commit`
23 | ```bash
24 | git add calculadora.js
25 | git commit -m "subida inicial"
26 | ```
27 |
28 | 6. subimos los cambios al repositorio en github
29 | ```bash
30 | git push origin main
31 | ```
32 |
33 |
34 | [Anterior](01-crear-repo.md) | [Siguiente: Crear una rama y añadir la calculadora »](03-rama-calculadora.md)
35 |
--------------------------------------------------------------------------------
/03-rama-calculadora.md:
--------------------------------------------------------------------------------
1 | # Paso 3: Crear Rama y Añadir Código de la Calculadora
2 |
3 | 1. Crea una nueva rama:
4 |
5 | ```bash
6 | git checkout -b calculadora-basica
7 | ```
8 |
9 | 2. Crea un archivo `calculadora.js` con lo siguiente:
10 |
11 | ```javascript
12 | function sumar(a, b) {
13 | return a + b;
14 | }
15 |
16 | function restar(a, b) {
17 | return a - b;
18 | }
19 | ```
20 |
21 | 3. Guarda el archivo.
22 |
23 | 4. Agrega y haz commit:
24 |
25 | ```bash
26 | git add calculadora.js
27 | git commit -m "Agregar suma y resta a la Calculadora"
28 | git push origin calculadora-basica
29 | ```
30 |
31 | [Anterior](02-clonar-vscode.md) | [Siguiente: Crear el Pull Request »](04-pull-request-basico.md)
32 |
--------------------------------------------------------------------------------
/04-pull-request-basico.md:
--------------------------------------------------------------------------------
1 | # Paso 4: Hacer Pull Request y Combinar en `main`
2 |
3 | 1. Ve a la pestaña `Pull Requests` en GitHub.
4 | 2. Crea un nuevo pull request desde `calculadora-basica` a `main`.
5 | 3. Agrega una descripción breve y clara.
6 | 4. Haz clic en **Create Pull Request**.
7 | 5. Aprueba y haz **Merge**.
8 |
9 | [Anterior](03-rama-calculadora.md) | [Siguiente: Crear y asignar un Issue »](05-crear-issue.md)
10 |
--------------------------------------------------------------------------------
/05-crear-issue.md:
--------------------------------------------------------------------------------
1 | # Paso 5: Crear y Asignar un Issue
2 |
3 | 1. Ve a la pestaña `Issues`.
4 | 2. Crea un nuevo issue titulado: **Agregar multiplicación y división**.
5 | 3. En la descripción, explica que faltan esas funciones.
6 | 4. Asígnate el issue (`Assignees`).
7 |
8 | [Anterior](04-pull-request-basico.md) | [Siguiente: Resolver el issue con una nueva rama »](06-rama-issue.md)
9 |
--------------------------------------------------------------------------------
/06-rama-issue.md:
--------------------------------------------------------------------------------
1 | # Paso 6: Resolver el Issue en Nueva Rama
2 |
3 | 1. Sincroniza tu repositorio local:
4 |
5 | ```bash
6 | git checkout main
7 | git pull origin main
8 | ```
9 |
10 | 2. Crea una nueva rama:
11 |
12 | ```bash
13 | git checkout -b operaciones-extra
14 | ```
15 |
16 | 3. Edita `calculadora.js` y agrega:
17 |
18 | ```javascript
19 | function multiplicar(a, b) {
20 | return a * b;
21 | }
22 |
23 | function dividir(a, b) {
24 | if (b === 0) throw new Error("División por cero");
25 | return a / b;
26 | }
27 | ```
28 |
29 | 4. Guarda, agrega y haz commit:
30 |
31 | ```bash
32 | git add calculadora.js
33 | git commit -m "Agregar multiplicación y división"
34 | git push origin operaciones-extra
35 | ```
36 |
37 | 5. Crea un Pull Request hacia `main`, asociando el Issue (usa `Closes #N` en la descripción).
38 |
39 | 6. Acepta el Pull Request. El issue se cerrará automáticamente.
40 |
41 | [Anterior](05-crear-issue.md) | [Siguiente: Crear un README detallado »](07-readme-proyecto.md)
42 |
--------------------------------------------------------------------------------
/07-readme-proyecto.md:
--------------------------------------------------------------------------------
1 | # Paso 7: Crear un README detallado en la rama `main`
2 |
3 | 1. Crea el archivo `README.md` en la raíz del proyecto con el siguiente contenido:
4 |
5 | ```markdown
6 | # Calculadora JS
7 |
8 | Una calculadora simple implementada en JavaScript que permite realizar operaciones básicas.
9 |
10 | ## Características
11 |
12 | - Operaciones disponibles: `suma`, `resta`, `multiplicación`, `división`
13 | - Código limpio y modular
14 | - Listo para extenderse con interfaz web o CLI
15 |
16 | ## Instalación
17 |
18 | Clona el repositorio:
19 |
20 | ```bash
21 | git clone https://github.com/tu_usuario/calculadora-js.git
22 | cd calculadora-js
23 | ```
24 |
25 | ## Pruebas rápidas
26 |
27 | Edita `index.html` o usa consola del navegador:
28 |
29 | ```html
30 |
31 |
35 | ```
36 |
37 | ## Estructura del Proyecto
38 |
39 | ```
40 | calculadora-js/
41 | ├── calculadora.js
42 | └── README.md
43 | ```
44 |
45 | ## Futuras mejoras
46 |
47 | - Agregar interfaz gráfica con HTML/CSS
48 | - Crear pruebas automatizadas con Jest
49 | - Convertir en módulo NPM
50 | ```
51 |
52 | 2. Guarda, agrega y haz push:
53 |
54 | ```bash
55 | git add README.md
56 | git commit -m "Agregar README detallado del proyecto"
57 | git push origin main
58 | ```
59 |
60 | [Anterior](06-rama-issue.md) | [Siguiente: Crear una discusión »](08-discusion.md)
61 |
--------------------------------------------------------------------------------
/08-discusion.md:
--------------------------------------------------------------------------------
1 | # Paso 8: Crear una Discusión
2 |
3 | 1. Ve a la pestaña `Discussions`.
4 | 2. Crea una nueva discusión.
5 | 3. Ejemplo de título: **¿Qué mejoras podríamos implementar en esta calculadora?**
6 | 4. En la descripción, sugiere ideas como:
7 | - Interfaz web simple con HTML/CSS.
8 | - Agregar pruebas automáticas.
9 | - Convertir en una API con Node.js.
10 |
11 | ¡Listo! Has completado el tutorial.
12 |
13 | [Anterior](07-readme-proyecto.md) | [Volver al Inicio »](README.md)
14 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Tutorial: Colaboración en GitHub con un Proyecto de Calculadora
2 |
3 | Este repositorio contiene un tutorial paso a paso para aprender a colaborar en GitHub mediante la creación y evolución de un pequeño proyecto: una calculadora en JavaScript.
4 |
5 | ### Contenido del Tutorial
6 |
7 | 1. [Crear un repositorio público](01-crear-repo.md)
8 | 2. [Clonar el repositorio y abrirlo en VS Code](02-clonar-vscode.md)
9 | 3. [Crear una rama para añadir la calculadora](03-rama-calculadora.md)
10 | 4. [Hacer un pull request básico](04-pull-request-basico.md)
11 | 5. [Crear y asignar issues](05-crear-issue.md)
12 | 6. [Resolver un issue con una nueva rama](06-rama-issue.md)
13 | 7. [Crear un README detallado](07-readme-proyecto.md)
14 | 8. [Abrir una discusión](08-discusion.md)
15 |
16 | ---
17 |
18 | > Sigue los archivos en orden para completar el flujo de trabajo completo.
19 |
--------------------------------------------------------------------------------