Este es el primero de los 4 scripts que me propuse escribir tal como se indica en la arquitectura del sistema. ¡Me sentí emocionado! ¿Fue un paso en la dirección de crear la experiencia "wiki" que contribuye al código abierto sin interactuar con la interfaz de usuario de GitHub?.
Estos son archivos js que contienen algunas funciones reutilizables relacionadas, especialmente diseñadas para interactuar con las API de GitHub; se consumen dentro del mismo script o se exportan para usarlos para realizar su funcionalidad básica en otra parte del proyecto. Aceptan una instancia de Octokit autenticada de un usuario como parámetros de otros, esta instancia se utiliza para realizar acciones/funciones a través de las API de GitHub en nombre del usuario autenticado.
La necesidad de crear un flujo de contribución al código abierto sin interactuar con la interfaz de usuario de GitHub significó que teníamos que automatizar algún proceso, simulando cada paso que daría un usuario si contribuyera a través de la interfaz de usuario de GitHub, los pasos son los siguientes: sigue...
Comencé a escribir este script justo después de la confirmación inicial; de hecho, este fue el PR n.° 2, pero ¿recibió un éxito durante el largo mes de descanso? Tomé del proyecto antes de volver a trabajar en la función del diccionario base.
La tarea aquí era crear "The Fork Script", cuyo objetivo final es crear/obtener una bifurcación del repositorio jergons.dev en/desde la cuenta de un usuario. Debería albergar todas las funciones que realizarán lo siguiente.
Al comprender la tarea, "profundicé" directamente en el guión.
Ya estoy muy acostumbrado a las API de GitHub debido a mi consumo frecuente en mi trabajo diario en Hearts ❤️... ¿Entonces la documentación de GitHub's Fork me parecía un broski?...
¿Pasando por mi mente? Mientras escribía este script fue un pensamiento al que me aferré después de leer el párrafo citado a continuación en la documentación de GitHub Fork
Nota: La bifurcación de un repositorio ocurre de forma asincrónica. Es posible que tengas que esperar un breve período de tiempo antes de poder acceder a los objetos de Git. Si esto lleva más de 5 minutos, asegúrese de comunicarse con el Soporte de GitHub.
Entendí mal esto y supuse que solo íbamos a poder iniciar un proceso de bifurcación, seguir adelante y seguramente no podremos esperar por un objeto de respuesta que devuelva los detalles de la nueva bifurcación porque no lo sabemos. cuando se completa el proceso de bifurcación.
Esta suposición me obligó a no devolver ningún dato de la función principal del repositorio de la bifurcación y ya estaba empezando a pensar en este punto: ¿cómo voy a conseguir que los detalles de la bifurcación se procesen en la siguiente fase del proceso de contribución? Hmm, ¿tal vez usaré webhooks?
¿Resultó que lo estaba pensando demasiado? Más tarde me di cuenta de que, de hecho, obtendría detalles de respuesta para la bifurcación y esto me llevó a hacer un PR de seguimiento para abordar la devolución de los datos requeridos del objeto de respuesta de la bifurcación para su consumo en el proceso de contribución.
Principal:
Esta solicitud de extracción implementa el script de bifurcación; este script está diseñado para bifurcar mediante programación el repositorio del proyecto principal a una cuenta de usuario; Alberga una función principal y otras funciones auxiliares que utiliza para realizar algunas acciones necesarias a fin de garantizar una operación eficiente de la bifurcación del repositorio.
Resuelve #2
https://github.com/babblebey/jargons.dev/assets/25631971/16221b7e-3c28-4c6c-a1f3-24d583ce7e3a
?
Este PR es un seguimiento de un paso que falta en la implementación inicial del script de bifurcación en el n.° 3; el script de bifurcación no pudo devolver un repositorio que pueda usarse en el siguiente paso del cálculo. Esto se debió a una suposición extraña que tuve durante la implementación inicial. ?Vea mi suposición a continuación...
Supongo que la llamada al punto final "POST /repos/{owner}/{repo}/forks" solo garantiza el inicio de un proceso de bifurcación sin asegurarnos una respuesta en absoluto. Lo que significa que es posible que no obtengamos exactamente una respuesta.datos después de la llamada
...pero eso no era cierto, descubrí que en realidad llega una respuesta.datos, pero puede llevar algo de tiempo y solo en los casos en que el repositorio que se bifurca es enorme... y en este momento La bifurcación del repositorio del proyecto ocurre en menos de 5 segundos.
?
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3