다음을 통해 공유


Azure Boards에서 GitHub Copilot 사용

Azure DevOps Services

비고

이 기능은 프라이빗 미리 보기로 제공됩니다. 액세스가 제한되며 일반 공급 전에 기능이 변경될 수 있습니다.

Azure Boards는 GitHub Copilot와 통합하여 개발 워크플로를 간소화합니다. 작업 항목을 Copilot와 함께 직접 사용할 수 있습니다. 그러면 자동으로 분기를 만들고, 코드 변경 내용을 구현하고, 초안 끌어오기 요청을 생성하면서 작업 항목을 진행 상태로 업데이트할 수 있습니다.

이 통합을 통해 다음을 수행할 수 있습니다.

  • 작업 항목에서 자동화된 코딩 시작
  • Azure DevOps에서 GitHub Copilot의 진행 상황 직접 추적
  • 생성된 끌어오기 요청 및 분기를 작업 항목에 자동으로 연결
  • 끌어오기 요청 초안을 검토할 준비가 된 경우 모니터링

중요합니다

이 통합을 위해서는 GitHub 리포지토리 및 GitHub 앱 인증이 필요합니다. Azure Repos(Azure DevOps Git 리포지토리)는 GitHub Copilot 통합에 지원되지 않습니다.

필수 조건

카테고리 요구 사항
라이센스 활성 GitHub Copilot 구독
리포지토리 적절한 권한이 있는 GitHub 리포지토리(Azure Repos 아님)
인증 Azure DevOps와 GitHub 간에 구성된 GitHub 앱 인증(개인용 액세스 토큰은 지원되지 않음)
권한 Azure DevOps에서 작업 항목 및 아티팩트를 연결할 수 있는 기여 권한.
Azure Boards 연결 GitHub에 Azure Boards 연결

지원되는 작업 항목 유형

GitHub Copilot 통합은 다음을 비롯한 요구 사항 및 작업 범주에 따라 모든 작업 항목 유형을 지원합니다.

  • 표준 작업 항목 유형: 사용자 스토리, 제품 백로그 항목, 요구 사항, 작업, 버그, 문제
  • 프로세스 템플릿에서 만든 사용자 지정 작업 항목 유형

이 광범위한 지원은 Azure DevOps 프로젝트의 모든 프로세스 템플릿(Agile, 스크럼, CMMI 또는 사용자 지정)의 작업 항목과 함께 GitHub Copilot를 사용할 수 있습니다.

작업 항목에서 GitHub Copilot 시작

  1. GitHub Copilot에서 사용하려는 작업 항목을 엽니다.

  2. 작업 항목 양식에서 GitHub 아이콘을 선택합니다.

    여러 옵션을 사용할 수 있는 경우 단추는 다른 선택 항목이 있는 드롭다운 메뉴가 됩니다.

    작업 항목에서 강조 표시된 GitHub Copilot 아이콘을 보여 주는 스크린샷

  3. GitHub Copilot를 사용하여 끌어오기 요청 만들기를 선택합니다.

    선택한 GitHub 메뉴 드롭다운 및 GitHub 끌어오기 요청을 시작하는 옵션을 보여 주는 스크린샷

  4. Copilot가 끌어오기 요청을 만들어야 하는 대상 GitHub 리포지토리 및 분기를 선택합니다.

    비고

    GitHub 앱 인증을 통해 연결된 GitHub 리포지토리만 리포지토리 목록에 표시됩니다. Azure Repos는 지원되지 않습니다.

  5. (선택 사항) Copilot의 구현 방법을 안내하는 특별한 지침을 추가합니다. 예를 들어 "설치 지침이 포함된 README 만들기"를 추가할 수 있습니다.

  6. 만들기를 선택하여 자동화된 코딩 프로세스를 시작합니다.

    스크린샷은 코필로트를 사용하여 초안 끌어오기 요청을 만들기 위한 리포지토리 및 분기의 메뉴 드롭다운을 보여줍니다.

코필로트를 시작하면 어떻게 되나요?

작업 항목에서 Copilot를 시작하면 다음과 같은 자동화된 프로세스가 발생합니다.

  • 데이터 공유: Azure DevOps는 GitHub Copilot를 사용하여 작업 항목 제목, 큰 텍스트 필드(예: 설명 및 수락 조건), 주석 및 작업 항목에 대한 링크를 공유합니다.
  • 라이선스 유효성 검사: Azure DevOps는 GitHub Copilot 라이선스를 확인합니다.
    • 유효성 검사에 실패하면 GitHub Copilot를 구매하는 라이선스 가져오기 옵션이 나타납니다.
  • 리포지토리 준비: 코필로트는 작업에 대한 새 분기를 만듭니다.
  • 끌어오기 요청 만들기: 초안 끌어오기 요청이 자동으로 생성되고 작업 항목에 연결됩니다.
  • 작업 항목 업데이트:
    • 작업 항목 토론에 주석이 추가됩니다.
    • 개발 섹션 위에 상태 표시기가 나타납니다.
    • 분기 및 끌어오기 요청 링크가 자동으로 추가됩니다.
  • 진행률 추적: 실시간 상태 업데이트는 Copilot의 진행률을 표시합니다.

GitHub Copilot 진행률 모니터링

상태 표시기

Azure DevOps는 다음과 같은 세 가지 가능한 상태로 작업 항목에 코필로트 상태를 직접 표시합니다.

  • 진행 중: Copilot는 코드 변경 작업을 적극적으로 진행하고 있습니다.
  • 검토 준비: 끌어오기 요청 초안이 완료되고 검토 준비가 완료되었습니다.
  • 오류: 코딩 프로세스 중에 문제가 발생했습니다(세부 정보를 가리킵니다).

비고

작업 항목의 복잡성에 따라 코필로트 작업이 완료되는 데 5~15분이 걸릴 것으로 예상합니다.

보드 카드 표시기

보드에서 작업 항목을 볼 때 작업 항목 카드에서 직접 GitHub Copilot 상태를 식별할 수 있습니다. 카드에 GitHub Copilot 아이콘이 나타나고 코필로트가 해당 항목에 대해 작업 중이거나 완료되었음을 나타냅니다.

진행률을 나타내는 GitHub Copilot 상태 아이콘이 있는 보드의 작업 항목 카드를 보여 주는 스크린샷

이 시각적 표시기를 사용하면 각 개별 작업 항목을 열지 않고도 활성 코필로트 작업이 있는 작업 항목을 빠르게 식별할 수 있습니다.

개발 섹션 업데이트

작업 항목의 개발 섹션에는 다음이 자동으로 표시됩니다.

  • Copilot에서 만든 연결된 브랜치입니다.
  • 실시간 상태를 가진 초안 형태의 풀 리퀘스트입니다.
  • GitHub에서 생성된 코드를 검토하기 위한 직접 링크입니다.

끌어오기 요청 검토 및 병합

  1. 끌어오기 요청 링크를 선택하여 GitHub에서 Copilot의 구현을 검토합니다.

  2. 변경 내용에 만족하는 경우 초안을 일반 끌어오기 요청으로 변환합니다. 작업 항목 토론은 끌어오기 요청 상태 변경에 대한 자동 업데이트를 받습니다.

  3. GitHub의 인터페이스를 사용하여 생성된 코드를 검토하고 주석을 달고 승인합니다.

  4. 준비가 되면 GitHub에서 병합 프로세스를 완료합니다.

    • 병합 커밋은 작업 항목에 자동으로 연결됩니다.
    • 브랜치가 삭제되면 브랜치 링크가 제거됩니다.
    • 병합에 성공한 후 부조종사 상태 표시기가 숨겨집니다.
  5. 끌어오기 요청이 병합된 후:

    1. 완료를 반영하려면 작업 항목 상태를 업데이트합니다.
    2. 개발 섹션에 병합 커밋이 표시되는지 확인합니다.
    3. 구현이 요구 사항을 완전히 충족하는 경우 작업 항목을 닫습니다.

자세한 내용은 GitHub Copilot 시작 학습 모듈을 참조하세요.

문제 해결

  • 오류 세부 정보 확인: 오류 아이콘 위로 마우스를 가져가서 무엇이 잘못되었는지에 대한 특정 정보를 확인합니다.

  • 코필로트 다시 실행: 코필로트 다시 실행을 선택하여 동일하거나 수정된 지침으로 프로세스를 다시 시도합니다.

    스크린샷은 선택한 기타 작업 아이콘을 보여 줍니다. 그런 다음 개발 영역에서 코필로트 선택을 다시 실행합니다.

  • 수동 개입: 필요한 경우 생성된 분기를 수동으로 변경하고 끌어오기 요청을 수행합니다.

라이선스 문제

  • 문제: 라이선스 유효성 검사가 실패합니다.
  • 해결 방법: 활성 GitHub Copilot 구독이 있는지 확인하고 필요한 경우 라이선스 가져오기를 선택합니다.

리포지토리 액세스

  • 문제: 예상 리포지토리를 볼 수 없습니다.
  • 해결책:
    • Azure DevOps와 GitHub 간의 GitHub 앱 연결을 확인합니다.
    • Azure Repos가 아닌 GitHub 리포지토리에 액세스할 수 있는지 확인합니다.
    • 리포지토리 권한 및 GitHub 앱 인증을 확인합니다.
    • 리포지토리가 적절한 GitHub 앱 통합을 통해 연결되어 있는지 확인합니다.

코파일럿 오류

  • 문제: 코딩 에이전트에서 오류가 발생합니다.
  • 해결 방법: 오류 세부 정보를 검토하고, 명확성을 위해 지침을 확인하고, 코필로트를 다시 실행해 보세요.

상태가 업데이트되지 않음

  • 문제: 진행 상태가 중단된 상태로 유지됩니다.
  • 해결 방법: 상태 업데이트가 GitHub 보고에 따라 달라지기 때문에 GitHub에서 실제 진행 상황을 확인합니다.

모범 사례

  • 작업 항목 설명 지우기: 더 나은 코필로트 결과를 위해 자세한 승인 조건 및 컨텍스트를 제공합니다.
  • 변경 내용을 간단하고 간결하게 유지: 작업 항목 설명을 더 복잡하고 자세히 설명할수록 코필로트가 이해하기가 더 어려워집니다. 명확하고 구체적인 요구 사항에 집중합니다.
  • 특정 지침: Copilot를 시작할 때 구현 지침을 추가합니다.
  • 정기적인 모니터링: 특히 복잡한 작업 항목에 대해 주기적으로 진행 상황을 확인합니다.
  • 프롬프트 검토: 초안 끌어오기 요청에 대한 피드백을 신속하게 검토하고 제공하여 모멘텀을 유지합니다.
  • 적절한 작업 항목 위생: 프로세스 전체에서 작업 항목 상태를 적절하게 업데이트합니다.

제한점

Azure Boards에서 GitHub Copilot를 사용하는 경우 다음과 같은 제한 사항에 유의하세요.

  • 종속성: 작업 항목 간의 종속성 처리는 지원되지 않습니다. 각 작업 항목은 독립적이어야 합니다.
  • 동시 작업: 여러 작업 항목에서 여러 동시 코필로트 작업을 관리하는 것은 지원되지 않습니다. 한 코파일럿 작업을 완료한 후 다른 코파일럿 작업을 시작하세요.
  • 데이터 공유: 작업 항목 제목, 큰 텍스트 필드, 메모 및 작업 항목 링크만 GitHub Copilot와 공유됩니다.
  • 복잡성: 지나치게 복잡하거나 자세한 작업 항목 설명은 코필로트의 효율성을 저하시킬 수 있습니다.