Para contribuir con nuevas páginas de contenido o mejorar las páginas de contenido existentes, abre un Pull Request (PR):
La siguiente figura ilustra cómo contribuir con nueva documentación.
flowchart LR subgraph first[Cómo contribuir] direction TB T[ ] -.- B[Haz un fork al repo de GitHub] --- C[Escribe el nuevo contenido utilizando Markdown<br>y compila la página web en Hugo] C --- D[Sube tus cambios locales al Fork] D --- E[Abre un Pull Request] E --- F[Firma el CNCF CLA] end classDef grey fill:#dddddd,stroke:#ffffff,stroke-width:px,color:#000000, font-size:15px; classDef white fill:#ffffff,stroke:#000,stroke-width:px,color:#000,font-weight:bold classDef spacewhite fill:#ffffff,stroke:#fff,stroke-width:0px,color:#000 class A,B,C,D,E,F,G,H grey class S,T spacewhite class first,second white
Figura 1. Contribuyendo con nuevo contenido.
Si no tienes mucha experiencia con Git, aquí tienes un método más sencillo para abrir un Pull Request. La Figura 2 describe los pasos y los detalles a continuación.
flowchart LR A([fa:fa-user Nuevo<br>Contribuyente]) --- id1[(open-telemetry/opentelemetry.io<br>GitHub)] subgraph tasks[Editando en GitHub] direction TB 0[ ] -.- 1[Edita esta página] --> 2[Usa el editor de markdown en GitHub<br>para hacer tus cambios] 2 --> 3[Agrega tus propuesta de cambios] end subgraph tasks2[ ] direction TB 4[Selecciona los archivos a cambiar] --> 5[Haz click en Crear Pull Request] --> 6[Llena los cambios en Abriendo un Pull Request] 6 --> 7[Haz click en Crear pull request] end id1 --> tasks --> tasks2 classDef grey fill:#dddddd,stroke:#ffffff,stroke-width:px,color:#000000, font-size:15px; classDef white fill:#ffffff,stroke:#000,stroke-width:px,color:#000,font-weight:bold classDef k8s fill:#326ce5,stroke:#fff,stroke-width:1px,color:#fff; classDef spacewhite fill:#ffffff,stroke:#fff,stroke-width:0px,color:#000 class A,1,2,3,4,5,6,7 grey class 0 spacewhite class tasks,tasks2 white class id1 k8s
Figura 2. Pasos para abrir un Pull Request desde GitHub.
En la página de la tarea en GitHub, selecciona Editar esta página en el panel de navegación en la derecha.
Si no eres miembro de este proyecto, puedes hacer fork al repositorio de GitHub. Selecciona Fork.
Haz tus cambios desde el editor de GitHub.
Llena el formulario de Subir cambios.
Selecciona Proponer cambios.
Selecciona Crear pull request.
Cuando la pantalla de Abrir un pull request aparezca. Agrega una descripción para que los supervisores puedan comprender tus cambios.
Selecciona Crear pull request.
Antes de hacer merge de tus cambios, Los miembros de la comunidad de OpenTelemetry harán revisión de tus cambios y los aprobarán.
Si un miembro te pide hacer cambios:
Cuando la revisión a terminado, un miembro de la comunidad hará merge de tu pull request y tus cambios estarán disponibles al público en algunos minutos.
/fix:format
en tu pull request para realizar una
revisión automática de formateo de tus cambios.Si eres un usuario más experimentado con Git, o tus cambios afectan varios archivos a la vez, trabaja desde una rama local.
Asegúrate de que tienes Git instalado en tu computadora. También puedes usar una interfaz gráfica de Git.
La figura 3 muestra los pasos a seguir cuando se trabaja desde una rama local. A continuación se detallan los pasos.
flowchart LR 1[Haz fork del repositorio <br>open-telemetry/opentelemetry] --> 2[Crea una rama local<br>y agrega el remote upstream] subgraph changes[Tus cambios] direction TB S[ ] -.- 3[Crea una rama<br>ejemplo: mi_nueva_rama] --> 3a[Haz los cambios<br>en un editor de texto] --> 4["Revisa tus cambios<br>localmente usando Hugo<br>(localhost:1313)"] end subgraph changes2[Haz Commit / Push] direction TB T[ ] -.- 5[Haz commit de tus cambios] --> 6[Haz push de tus cambios<br>origin/mi_nueva_rama] end 2 --> changes --> changes2 classDef grey fill:#dddddd,stroke:#ffffff,stroke-width:px,color:#000000, font-size:15px; classDef white fill:#ffffff,stroke:#000,stroke-width:px,color:#000,font-weight:bold classDef k8s fill:#326ce5,stroke:#fff,stroke-width:1px,color:#fff; classDef spacewhite fill:#ffffff,stroke:#fff,stroke-width:0px,color:#000 class 1,2,3,3a,4,5,6 grey class S,T spacewhite class changes,changes2 white
Figura 3. Trabajando desde una rama local para hacer cambios.
opentelemetry.io
.En tu terminal, clona tu fork y instala las dependencias:
git clone git@github.com:<your_github_username>/opentelemetry.io.git
cd opentelemetry.io
npm install
Coloca el repositorio de open-telemetry/opentelemetry.io
como el upstream
remote:
git remote add upstream https://github.com/open-telemetry/opentelemetry.io.git
Confirma los valores de los remotes origin
y upstream
:
git remote -v
La salida debe ser similar a:
origin git@github.com:<your_github_username>/opentelemetry.io.git (fetch)
origin git@github.com:<your_github_username>/opentelemetry.io.git (push)
upstream https://github.com/open-telemetry/opentelemetry.io.git (fetch)
upstream https://github.com/open-telemetry/opentelemetry.io.git (push)
Actualiza los cambios de la rama origin/main
en tu fork y la rama
upstream/main
del repositorio original open-telemetry/opentelemetry.io
:
git fetch origin
git fetch upstream
Esto se asegura de que tu repositorio local está actualizado antes de que empieces a hacer tus cambios localmente. Realiza esto frecuentemente para mantener tu copia local sincronizada con la versión en el repositorio original.
Crea una rama. Este ejemplo asume que tomaremos de referencia la rama
upstream/main
:
git checkout -b <mi_nueva_rama> upstream/main
Haz tus cambios en tu editor de código favorito.
Usa el comando git status
con regularidad para visualizar los archivos que has
cambiado.
Cuando estás listo para subir tu pull request, haz commit de tus cambios.
En tu repositorio local, revisa los cambios que quieres subir a GitHub:
git status
La salida debe ser similar a:
On branch <mi_nueva_rama>
Your branch is up to date with 'origin/<mi_nueva_rama>'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: content/en/docs/nombre_de_tu_archivo.md
no changes added to commit (use "git add" and/or "git commit -a")
Agrega los archivos listados debajo de Changes not staged for commit al commit:
git add <nombre_de_tu_archivo>
Repite esto para cada uno de los archivos a subir.
Luego de modificar todos los archivos, crea un commit:
git commit -m "Mensaje de tu commit"
Sube los cambios a tu rama local:
git push origin <mi_nueva_rama>
Una vez tus cambios fueron subidos, GitHub te notifica si quieres crear un Pull Request (PR) de tus cambios.
La Figura 4 muestra los pasos para abrir un PR desde tu rama a opentelemetry.io.
flowchart LR subgraph first[ ] direction TB 1[Abre el repositorio opentelemetry.io] --> 2[Haz click en nuevo Pull Request] 2 --> 3[Haz click en comparar entre forks] 3 --> 4[Selecciona tu fork <br>desde el drop-down] end subgraph second [ ] direction TB 5[Selleciona tu rama desde<br>el menu de comparación] --> 6[Haz click en crear nuevo Pull Request] 6 --> 7[Agrega una descripción<br>a tu PR] 7 --> 8[Haz click en crear pull request] end first --> second classDef grey fill:#dddddd,stroke:#ffffff,stroke-width:px,color:#000000, font-size:15px; classDef white fill:#ffffff,stroke:#000,stroke-width:px,color:#000,font-weight:bold class 1,2,3,4,5,6,7,8 grey class first,second white
_Figura 4. Pasos para abrir un PR desde tu fork a opentelemetry.io.
En un navegador web, ve al repositorio
opentelemetry.io
.
Selecciona Nuevo Pull Request.
Selecciona Comparar ramas.
En el menú desplegable repositorio principal, selecciona su rama.
En el menú desplegable Comparar, selecciona tu rama.
Selecciona Crear Pull Request.
Agrega una descripción para tu pull request:
Título (50 caracteres o menos): Resume la intención del cambio.
Descripción: Describe el cambio con más detalle.
Si hay un problema de GitHub relacionado, incluye Fixes #12345
o
Closes #12345
en la descripción para que la automatización de GitHub
cierre el problema mencionado después de fusionar el PR. Si hay otros PR
relacionados, vincúlalos también.
Si quieres asesoramiento sobre algo específico, incluye cualquier pregunta que te gustaría que los miembros consideren en tu descripción.
1 Haz click en el botón Crear pull request.
Tu pull request estará disponible en pull Requests.
Después de abrir un PR, GitHub ejecuta pruebas automatizadas e intenta implementar una vista previa usando Netlify.
También pueden fallar otras comprobaciones. Consulta la lista de todas las comprobaciones de PR.
Antes de enviar un cambio al repositorio, ejecuta el siguiente comando y (i) aborda los problemas informados, (ii) confirma los archivos modificados por el script:
npm run test-and-fix
Para probar y solucionar por separado todos los problemas con tus archivos, ejecuta:
npm run test # Checks but does not update any files
npm run fix:all # May update files
Para enumerar los scripts NPM disponibles, ejecuta npm run
. Consulta los
Pre-requisitos de PR para obtener más
información sobre las verificaciones de los Pull Request y cómo solucionar
errores automáticamente.
Obtén una vista previa de tus cambios localmente antes de enviarlos o abrir un pull request. Una vista previa te permite detectar errores de compilación o problemas de formato de Markdown.
Para crear y servir el sitio localmente con Hugo, ejecuta el siguiente comando:
npm run serve
Navega a http://localhost:1313
en su navegador web para ver la vista previa
local. Hugo observa los cambios y reconstruye el sitio según sea necesario.
Para detener la instancia local de Hugo, vuelve a la terminal y escriba
Ctrl+C
, o cierre la ventana de la terminal.
Si envías una PR, Netlify crea una Vista Previa de Implementación para que puedas revisar sus cambios. Una vez que se fusiona su PR, Netlify implementa el sitio actualizado en el servidor de producción.
Nota: Las vistas previas de PR incluyen páginas de borrador, pero las compilaciones de producción no.
Para ver los registros de implementación y más, visita el Panel de Control del proyecto. Se requiere inicio de sesión en Netlify.
Antes de fusionar un PR, a veces se requieren algunas iteraciones de revisión y edición. Para ayudarnos a nosotros y a ti mismo a hacer que este proceso sea lo más sencillo posible, te pedimos que respetes lo siguiente:
main
de su fork: crea una rama específica para
el PR.A veces, los revisores suben cambios en tu pull request. Antes de realizar cualquier otro cambio, actualiza tu rama.
Actualiza los commits de tu fork y haz rebase de tu rama actual:
git fetch origin
git rebase origin/<nombre-de-tu-rama>
Luego de hacer rebase, sube tus nuevos cambios a tu fork:
git push --force-with-lease origin <nombre-de-tu-rama>
También puedes resolver conflictos de fusión desde la interfaz de usuario de GitHub.
Si otro colaborador realiza cambios en el mismo archivo en otro pull request, puedes crear un merge. Es tu responsabilidad resolver todos los conflictos en tu Pull Request.
Actualiza tu fork y haz git rebase de tu rama local:
git fetch origin
git rebase origin/<nombre-de-tu-rama>
Luego haz force-push de tus cambios a tu fork:
git push --force-with-lease origin <nombre-de-tu-rama>
Actualiza los cambios de la rama upstream/main
en
open-telemetry/opentelemetry.io
y haz git rebase a tu rama actual:
git fetch upstream
git rebase upstream/main
Inspecciona los resultados del git rebase:
git status
Esto indicará la cantidad de archivos marcados con conflictos.
Abra cada archivo en conflicto y busque los marcadores de conflicto: >>>
,
<<<
, y ===
. Resuelva el conflicto y elimine el marcador de conflicto.
Para obtener más información, consulta Cómo se presentan los conflictos.
Agrega los archivos al conjunto de cambios:
git add <filename>
Haz force push de los cambios en tu rama a tu fork:
git push --force-with-lease origin <nombre-de-tu-rama>
El pull request ya no muestra ningún conflicto.
Los pull request se hacen merge cuando cumplen con los siguientes criterios:
Importante
No te preocupes demasiado por las comprobaciones de PR fallidas. Los miembros de la comunidad te ayudarán a solucionarlas, ya sea proporcionándote instrucciones sobre cómo solucionarlas o solucionándolas en tu nombre.
¿Fue útil esta página?
Thank you. Your feedback is appreciated!
Please let us know how we can improve this page. Your feedback is appreciated!