Skip to main content

Acelerar las solicitudes de cambios en tu empresa con GitHub Copilot

Comprende las características, habilita a los desarrolladores y mide el impacto de Copilot.

¿Quién puede utilizar esta característica?

GitHub Copilot para empresas or GitHub Copilot para grandes empresas

La guía está inspirada en el Cuaderno de estrategias de éxito del sistema de ingeniería (ESSP) de GitHub, que recomienda estrategias y métricas para impulsar mejoras en los sistemas de ingeniería.

Si vas a iniciar un lanzamiento de Copilot, se recomienda definir los objetivos, planear el lanzamiento en consecuencia y comunicar claramente los objetivos al personal. Consulta Lograr los objetivos de ingeniería de tu empresa con GitHub Copilot.

1. Identificación de barreras para alcanzar el éxito

El primer paso que recomienda el ESSP es desarrollar una comprensión clara de los obstáculos que impiden mejoras en tu empresa. Al comprender la línea de base actual, el estado futuro deseado y las barreras que te impiden avanzar, puedes asegurarte de que los cambios están dirigidos al objetivo y son efectivos.

Los equipos suelen experimentar retrasos en la combinación de solicitudes de cambios debido a ciclos de revisión prolongados. Estos retrasos suelen deberse a lo siguiente:

  • Cambios de código complejos que son difíciles de entender
  • Formato de código incoherente que dificulta las revisiones
  • Falta general de contexto proporcionado con los cambios
  • Factores sociales que contribuyen a revisiones lentas o difíciles de abordar

Los revisores también pueden pasar por alto fácilmente errores pequeños que pueden provocar problemas de producción.

Esto provoca cuellos de botella en el proceso de desarrollo y ralentiza la entrega general y la calidad de las características.

2. Evaluación de las opciones

El siguiente paso consiste en evaluar y aceptar soluciones para abordar las barreras que has identificado en el paso uno. En esta guía, nos centraremos en el impacto que GitHub Copilot puede tener en el objetivo que has identificado. Los lanzamientos exitosos de una nueva herramienta también requieren cambios en la cultura y los procesos.

Ejecute pruebas de nuevas herramientas y procesos con grupos piloto para recopilar comentarios y medir el éxito. Para obtener información sobre los recursos de entrenamiento y las métricas que se usarán durante las pruebas, consulte las secciones 3. implemente cambios y Métricas a observar.

          <a href="https://github.com/github-copilot/purchase?ref_product=copilot&ref_type=trial&ref_style=button&ref_plan=enterprise" target="_blank" class="btn btn-primary mt-3 mr-3 no-underline">              <span>Regístrese para Copilot</span> <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-link-external" aria-label="link external icon" role="img"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a>

Cómo Copilot puede servir de ayuda

GitHub Copilot ofrece un conjunto de características diseñadas para acelerar el proceso de revisión de solicitudes de cambios, mejorar la calidad del código y mejorar la colaboración, lo que en última instancia conlleva tiempos de combinación más rápidos.

Al sacar provecho de las funcionalidades de Copilot, los equipos pueden simplificar sus flujos de trabajo, reducir la fricción y garantizar código coherente y de alta calidad.

Genera resúmenes completos y útiles de solicitud de cambios

Copilot puede generar automáticamente resúmenes claros y concisos de solicitud de cambios, lo que ahorra tiempo a los desarrolladores y garantiza que los revisores comprendan fácilmente el propósito y los cambios de la solicitud de cambios. Esto reduce la probabilidad de malentendidos y acelera el proceso de revisión.

Ayuda a los revisores durante su proceso de revisión

GitHub Copilot se puede usar como complemento eficaz de revisión de las solicitudes de cambios.

  • Copilot puede ayudar a explicar cambios de código complejos para que los revisores comprendan más rápidamente el alcance de la contribución de la solicitud de cambios.
  • Copilot puede proporcionar sugerencias para todo el repositorio, sugerencias contextuales y posibles mejoras de código directamente dentro de la interfaz de revisión de solicitudes de cambios en GitHub, lo que ayuda a los revisores a detectar posibles problemas y ofrecer comentarios constructivos de forma más eficaz.
  • Copilot puede ayudar a los revisores a redactar y escribir comentarios de revisión claros, coherentes y eficaces.

Revisiones basadas en las directrices de la organización

  • Copilot puede revisar los cambios de código en el IDE antes de abrir una solicitud de cambios o asignarse como revisor de una solicitud de cambios.
  • Con los conjuntos de reglas, puedes configurar Copilot para revisar sistemáticamente las solicitudes de cambios en función de los criterios personalizados.
  • Con instrucciones personalizadas para las revisiones, Copilot puede aplicar los estándares de codificación de la organización y los procedimientos recomendados, marcar automáticamente las posibles infracciones y sugerir correcciones.

Estas características garantizan la coherencia en el código base y ayudan a detectar errores al principio del proceso de desarrollo, lo que reduce la necesidad de revisiones manuales de código y ahorra tiempo a los desarrolladores y revisores.

Sugiere correcciones de código

En función de un comentario de revisión de solicitudes de cambios, Copilot puede ayudar a los autores de solicitudes de cambios a implementar rápidamente los cambios de código necesarios para resolver la revisión.

Consideraciones culturales

Junto con el lanzamiento de GitHub Copilot, considere los factores sociales o culturales que podrían impedirle lograr sus objetivos.

Los ejemplos siguientes se extraen de la sección "Antipatrones" del ESSP.

  • Los equipos podrían esperar demasiado tiempo para hacer el lanzamiento, implementando lotes grandes de código a la vez. Esto podría deberse a un temor a la desestabilización con versiones frecuentes, una falta de madurez de canalización de CI/CD o a requisitos estrictos de cumplimiento.
  • Los desarrolladores podrían dedicar demasiado tiempo a perfeccionar el código o a agregar características innecesarias. Esto podría deberse a una cultura de perfeccionismo o a una falta de establecimiento de prioridades efectiva.
  • Los desarrolladores podrían crear soluciones excesivamente complejas para problemas simples. Esto podría deberse a un deseo de hacer una prueba de futuro sin que sea necesaria o presionar para agregar valor mediante la complejidad.

3. Implementación de cambios

Cuando haya identificado el enfoque adecuado para superar las barreras, escale las soluciones que identificó. Para un lanzamiento correcto de una nueva herramienta o proceso, asigne la propiedad a cada parte del lanzamiento, comunique de forma transparente los objetivos, proporcione entrenamiento eficaz y mida los resultados.

En esta sección se proporcionan escenarios de ejemplo, procedimientos recomendados y recursos para desarrolladores. Use esta sección para planear las comunicaciones y las sesiones de aprendizaje para ayudar a los empleados a usar Copilot de una manera que se alinee con el objetivo.

  •           [Creación de resúmenes útiles de solicitud de incorporación de cambios](#create-helpful-pull-request-summaries)
    
  •           [Uso de Copilot como asistente para la revisión](#use-copilot-as-a-review-assistant)
    
  •           [Incorporación de Copilot como revisor](#add-copilot-as-a-reviewer)
    
  •           [Obtención de ayuda para implementar comentarios de revisión](#get-help-implementing-review-comments)
    
  •           [Procedimientos recomendados para desarrolladores](#best-practices-for-developers)
    
  •           [Recursos](#resources)
    

Creación de resúmenes útiles de solicitud de cambios

  1. Al crear una solicitud de cambios, haz clic en el icono Copilot en el campo "Add a description" y, después, haz clic en Summary.
  2. Copilot examinará la solicitud de cambios y proporcionará información general sobre los cambios realizados en el texto, así como una lista con viñetas de los cambios con los archivos a los que afectan.
  3. Comprueba que estás satisfecho con la descripción de Copilot.
  4. Cuando los revisores lleguen a la solicitud de cambios, tendrán todo el contexto que necesitan para dejar una revisión.

Uso de Copilot como asistente para revisión

Al saltar a una solicitud de cambios como revisor, puedes usar Copilot para acelerar la revisión.

  1. Usa Copilot para comprender los cambios en la solicitud de cambios.

    • Pide a Copilot que resuma los cambios realizados en un archivo, lo cual es especialmente útil para diferencias más largas. Para elegir un archivo específico de las diferencias, haz clic en en la esquina superior derecha del archivo.

      Captura de pantalla de la pestaña "Files changed" de una solicitud de cambios. La opción "Ask Copilot about this diff" está resaltada en rojo.

    • Para los cambios en líneas específicas, resalta las líneas que quieres comprender mejor y pide a Copilot que explique los cambios. Para resaltar un conjunto de líneas, haz clic primero en el número de línea superior, mantén presionada la tecla MAYÚS y, después, haz clic en la línea más baja de la diferencia.

      Captura de pantalla de la pestaña "Files changed" de una solicitud de cambios. Se resalta una selección de líneas y se muestra una opción "Explain" en una lista desplegable.

  2.           **Colabore en la revisión de la solicitud de incorporación de cambios** con Copilot. No olvides adjuntar las diferencias de archivo específicas a la conversación antes de solicitar Copilot.
    
    • Puedes pedir a Copilot su propia opinión sobre los cambios en la PR; para ello, pregunta: Provide your judgement as a PR Reviewer, both for functional and non-functional aspects that these changes bring. Ten en cuenta cómo esta solicitud pide a Copilot que consideres los aspectos funcionales y no funcionales del código.

    • Para tus propios comentarios de revisión de las solicitudes de cambios, pide a Copilot que obtenga una segunda opinión: As my peer reviewer on this pull request, give me your feedback on my own review: YOUR-REVIEW-COMMENT. Do you think it's pertinent? Am I missing something?

  3. Colabora con Copilot para redactar y refinar los comentarios de revisión.

    • Después de planear la revisión con Copilot, puedes pedir que muestre los comentarios que debes proporcionar: Make a list of review comments to add to the PR and tell me exactly in which file diff and lines each comment should be added.
    • También puedes pedir a Copilot que cree un primer borrador de un comentario de revisión que tengas en mente o que refine un comentario antes de publicarlo: Help me draft review comments as discussed o Refine this review comment to make it clear, concise, and actionable.

Incorporación de Copilot como revisor

Para reducir los tiempos de revisión y combinar las solicitudes de cambios más rápido, usa las revisiones de código de Copilot sistemáticamente: primero en el IDE antes de abrir la solicitud de cambios y, después, en la solicitud de cambios en GitHub.

El uso de la revisión de código de Copilot no reemplaza la necesidad de revisión humana del código. Pero seguir los pasos anteriores puede ayudar a los humanos a completar sus revisiones más rápido.

  •           Los **desarrolladores** deben solicitar una revisión de todos sus cambios con la revisión de código de Copilot antes de abrir una solicitud de incorporación de cambios.
    
  •           Los **administradores** deben configurar conjuntos de reglas de organización o repositorio para agregar automáticamente Copilot como revisor en cualquier solicitud de incorporación de cambios destinada a ramas protegidas.
    
  •           Los **responsables del equipo** deben capturar el estilo y las reglas estándar de su equipo y establecerlas como instrucciones personalizadas para la organización, de modo que Copilot pueda sacar provecho de ellas en las revisiones.
    
    • Asegúrate de que las instrucciones personalizadas capturan un conjunto mínimo de recomendaciones de estilo que hacen que el código sea más legible, lo que te ayudará durante el proceso de revisión de solicitudes de cambios.
    • Para reducir la cantidad de comentarios de revisión de la PR debido a problemas de estilo, establece las mismas recomendaciones en las instrucciones de Copilot en el nivel de repositorio y organización. De este modo, el código que genera Copilot se ajustará a estas directrices.

Obtención de ayuda para implementar comentarios de revisión

Los autores de solicitudes de cambios pueden acelerar la resolución de los comentarios de revisión de solicitudes de cambios mediante la implementación rápida de correcciones con la ayuda de Copilot.

  • Para cualquier comentario de revisión que deje el propio Copilot, confirma la corrección propuesta directamente o edítala en el área de trabajo de Copilot antes de confirmarla.
  • En el caso de los comentarios de revisión que dejan los colegas, ve al archivo de diferencias relacionado con el comentario de revisión de solicitudes de cambios y adjunta la diferencia a una conversación de chat de Copilot. Después, copia el comentario de revisión con un mensaje similar al siguiente: Suggest a fix for this review comment:.
  • Si usas VS Code, pide a GitHub Copilot en modo de agente que implemente los cambios necesarios desde el comentario de revisión.

Procedimientos recomendados para desarrolladores

Los desarrolladores deben:

  • Solicitar la revisión de Copiloten el IDE antes de insertar los cambios para detectar y resolver problemas al principio.
  • Usar Copilot para planear y refinar tus propios comentarios de revisión de PR para ayudar a los autores de la PR a comprender y resolver los problemas.
  • Adjuntar el contexto de diferencias pertinente, incluidas líneas de código específicas, a las conversaciones con Copilot.

Los desarrolladores no deben:

  • Aplicar las sugerencias de Copilot sin realizar pruebas.
  • Confiar únicamente en Copilot para las revisiones.
  • Descuidar la legibilidad del código.

Recursos

  •           [AUTOTITLE](/copilot/using-github-copilot/using-github-copilot-for-pull-requests/creating-a-pull-request-summary-with-github-copilot)
    
  •           [AUTOTITLE](/copilot/using-github-copilot/code-review/using-copilot-code-review?tool=vscode#reviewing-changes)
    
  •           [AUTOTITLE](/copilot/how-tos/configure-custom-instructions/add-repository-instructions)
    
  •           [AUTOTITLE](/copilot/how-tos/agents/copilot-code-review/automatic-code-review)
    
  •           [AUTOTITLE](/copilot/customizing-copilot/adding-organization-custom-instructions-for-github-copilot)
    

Métricas que se van a ver

Para evaluar las pruebas de nuevas herramientas y asegurarse de que los lanzamientos completos proporcionan mejoras coherentes, supervise los resultados y realice ajustes cuando sea necesario. Se recomienda considerar las zonas clave de calidad, velocidad y felicidad del desarrollador, y cómo estas zonas se unen para contribuir a los resultados empresariales.

Estas son algunas métricas para evaluar el impacto de Copilot en este objetivo específico.

  •           **Satisfacción del desarrollador**: usa encuestas para desarrolladores a fin de medir la satisfacción con las herramientas de ingeniería.
    
  •           **Solicitudes de incorporación de cambios combinadas por desarrollador**: puede usar el webhook `pull request`, lo que garantiza que `action` es `closed` y que la propiedad `merged` dentro del objeto `pull request` es `true`.
    
  •           **Plazo de las solicitudes de incorporación de cambios**: mide el promedio de tiempo entre la creación y la combinación de la PR.
    
  •           **Frecuencia de escape de defectos de solicitud de incorporación de cambios**: mide la frecuencia de problemas de implementación causados por solicitudes de cambios mal revisadas.
    
  •           **Tipo de comentario de revisión de solicitud de incorporación de cambios**: descargue comentarios de revisión de solicitudes de incorporación de cambios, clasifíquelos mediante la clasificación de temas basada en inteligencia artificial y realice el seguimiento de los comentarios realizados por revisores humanos sobre diseño, escalabilidad y estrategia.