Con tu yuda, podemos crear un herramienta de referencia accesible que ayudará a millones de personas que están aprendiendo a programar en los próximos años. 💛
> Si el icono aparece gris y te muestra la alerta "Debes estar en una rama para hacer o proponer cambios a este archivo", significa que probablemente estés en la rama de otra persona. En la parte superior izquierda de la página hay una casilla desplegable que dice: "Árbol: #######". Pincha en el desplegable y cambia la rama a maestra. El icono de edición debería estar disponible ahora.
3. Desplázate a la parte de abajo de la pantalla y añade un mensaje explicando tus cambios.
(Opcional): Recomendamos haer un mensaje convencional. Esta es una buena práctica que verás en algunos de los repositorios Open Source más populares. Como desarrollador, deberías seguir las prácticas estándar.
Algunos ejemplos de mensajes convencionales serían:
```md
Solución: Actualizar articúlo de guía sobre HTML
Solución: Actualizar scripts para Travis-CI
feat: Añadir articulo sobre JavaScript hoisting
Documentos: Actualizadas recomendaciones de contribución
esto no supone ningún esfuerzo adicional respecto a mensajes como 'update file' o 'add index.md'
Puedes aprender más sobre [por qué deberías seguir esta práctica aquí](https://www.conventionalcommits.org/en/v1.0.0-beta.2/#why-use-conventional-commits).
4. Selecciona el botón con la opción **"Crear una nueva rama para esta propuesta y enviar"** and click <kbd>Proponer cambio en el archivo</kbd>.
5. En la siguiente pantalla, puedes añadir más detalles sobre tu PR, luego pincha en <kbd>Crear pull request</kbd>.
No es obligatorio que trabajes en tu sistema personal, salvo que desees pre-visualizar tus cambios, o trabajar con version actualizada y arreglos de UI. También es recomendable si tienes problemas con git como errores de integración, rebase, etc.
- **duplicada** es para Pull Request que contienen el mismo contenido que otro PR abierto
- **cambios solicitados** es para Pull Requests que necesitan algún cambio antes de ser integrados
- **pasada** es para Pull Requests que con etiqueta _"changes requested"_ que no han tenido actividad durante al menos 2 semanas y serán por tanto cerrados
Si un PR rompe la ejecución (un test de Travis CI falla y muestra una "X" roja) hay tres causas probables y tendrás que resolver el problema antes de que podamos integrar el PR:
- Cada directorio en `src/pages` necesita un archivo `index.md` en él (y debe llamarse `index.md`).
- Dos escenarios muy probables son
- llamaste al archivo de forma distinta a `index.md`, o
- creates un nuevo directorio y un subdirectorio, y escribiste el nuevo artículo en el subdirectorio pero olvidaste incluir un achivo raiz `index.md` en el nuevo directorio
2. Tu PR crea un directorio nuevo y su nombre no tiene el formato correcto.
- Tu directorio debería incluir solamente minúsculas y seguir el formato kebab-case (Ejemplo. mi-nuevo-directorio).
3. El artículo no tiene un campo llamado `título` en la parte superior.
- Por favor utiliza la sección [Título](#title) según la [Guía de Estilo para escribir artículoss](/docs/style-guide-for-guide-articles.md).
### Cuándo cerramos Pull Requests
Cerramos Pull Requests
- Si una PR más antigua para el mismo artículo es integrada, y tu PR no añade nuevo contenido
- Si hay poco o ningún esfuerzo por tu parte en su elaboración (Por ejemplo: copias literales de artículos de páginas como Wikipedia)
- Si incluye contenido copiado de fuentes con Copyright - ver [Citas](https://github.com/freeCodeCamp/freeCodeCamp/issues/2503)
- Si no respeta la [Guía de estilo para escribir articulos](/docs/style-guide-for-guide-articles.md)
- Si no respeta la [Política Académica de Honestidad](https://www.freecodecamp.org/academic-honesty)
- Si está pasada (un cambio ha sido solicitado y no ha habiado respuesta en 2 semanas)
Además, si estás trabajando a partir de un artículo raiz, tus cambios deben ser los suficiente notables como para sustituir al original.
No aceptaremos PRs que solamente incluyan links a la sección de "Más información:".
El repositorio tiene un script `Normalise.js` que añade atributos a los link, pero también revisa si aparece el texto "This is a stub..." mediante RegEx.
Si lo encuentra, revertirá todos los cambios al artículo raiz original eliminando todos tus cambios.
Esta funcionalidad es deliberada, nos permite actualizar todos los artículos raiz si hubiese algún cambio en la plantilla original.
### Solicita ayuda
Existe una comunidad de apoyo compuesta por un gran número de contribuidores, a quienes puedes pedir opiniones y con quienes contrastar ideas.
Mantente activo en el [chat de Contribuidores](https://gitter.im/freecodecamp/contributors) y haz muchas preguntas.
---
## Pasos para revisar Pull Requests para artículos de Guía
> Esta sección está orientada a revisores del repositorio.
## Aplastar e integrar
Utilizamos la opción <kcd>Aplastar e integrar</kcd> al integrar una PR para mentener el historial de propuestas limpio.
![GIF - Squash and merge](https://files.gitter.im/FreeCodeCamp/Contributors/56MQ/9cb8db153d7bb1b3576cd1ffc207e39d.gif)
### Filtrar PRs
> PR, Obierta, Más Antiguas Primero, Travis CI Build correcta, nadie asignado, sin comentarios
> Puedes crear tus propias plantillas en la herramienta de GitHub's [**Respuestas guardadas**](https://github.com/settings/replies/) o utilizar las siguientes.
#### Gracias
```markdown
Gracias por contribuir a la página! 👍
Estamos encantados de aceptar estos cambios y esperamos tus futuras aportaciones. 🎉
```
#### Gracias y enhorabuena
> Para agradecer y animar a contribuidores primerizos.
```markdown
Hola @username. Enhorabuena por tu primera pull request (PR)! 🎉
Gracias por contribuir a la página! 👍
Estamos encantados de aceptar estos cambios y esperamos tus futuras aportaciones. 📝
```
#### Error de intregración
```markdown
Hola @username
Me encantaría integrar tus cambio pero para que hay un error con Travis CI build. ⚠️
Una vez resuelvas el problema, podré revisar tu PR e integrarla. 😊
---
> Puedes conseguir más información en la [Guía de estilo para escibir Artículos](https://github.com/freeCodeCamp/freeCodeCamp#article-title) sobre cómo formatear tus artículos para que superen los test de Travis CI. ✅
>
> Además, es una buena ráctica en GitHub escribir una decripción breve de tus cambios al crear una PR. 📝
```
#### Sincronización de Fork
> Cuando la PR no está actualizada con la rama `master`.
``````markdown
Hola @username
Me enctaría poder integrar tus cambios pero parece que hay un error con los test de Travis CI build. ⚠️
```bash
Error: ENOTDIR: not a directory, open 'src/pages/java/data-abstraction/index.md'
```
Este error en particular no fue provocado por tu archivo sino que se trata de un error antiguo debido a la integración de código erróneo en la rama `master`. Ha sido resuelto desde entonces
Para superar el test, deberás sincronizar los últimos cambios en la rama `master` del repositorio `freeCodeCamp/freeCodeCamp`.
Usando la línea de comandos, puedes hacer esto en tres pasos sencillos:
Si utilizas una GUI, puedes simplemente hacer `Add a new remote...` y utilizar el link `git://github.com/freeCodeCamp/freeCodeCamp.git` de arriba.
Una vez sincronices tu fork y superes los test podré integrar tu PR. 😊
---
> Puedes conseguir más información en e artículo [Sincronizando un Fork](https://help.github.com/articles/syncing-a-fork/) sobre cómo mantener al día tu fork con el repositorio principal. 🔄
>
> Además, es una buena ráctica en GitHub escribir una decripción breve de tus cambios al crear una PR. 📝
``````
#### Conflictos de integración
> Cuando la PR tiene conflictos de integración que debemos resolver.¹
```markdown
Hola @username
Me encantaría poder integrar tus cambios para parece que tienes conflictos de integración. ⚠️
Una vez resuelvas estos conflictos, podré revisar tu PR e integrarla. 😊
---
> Si no estás familiarizado con los conflictos de integración, por favor revisa la guía de GitHub ["Resolviendo conflictos de integración"](https://help.github.com/articles/resolving-a-merge-conflict-on-github/) para más información. 🔍️
>
> Además, es una buena ráctica en GitHub escribir una decripción breve de tus cambios al crear una PR. 📝
```
¹ Si un contribuidor primerizo tiene conflictos de integración, los encargados de mantenimiento lo resolverán en su lugar.
#### Duplicado
> Cuando la PR está duplicada o es repetitiva
```markdown
Hola @username
Parece que ya se han aceptado cambios similares para este artículo que estás editando, lo siento. 😓
Si cees que tienes más que aportar, por favor abre una nueva PR.
Gracias de nuevo! 😊
---
> Si tienes preguntas, no dudes en contactarnos a través [Gitter](https://gitter.im/FreeCodeCamp/Contributors) o comentando más abajo. 💬
```
#### Cerrando Pull Requests no válidas
> Cuando una PR no es válida.
```markdown
Hola @username
No has añadido ningún contenido real por invalidaré esta PR y la etiquetaré como `inválida`. 😓️