연습 - Azure DevOps 환경 설정
이 단원에서는 Microsoft Azure DevOps 조직이 이 모듈의 나머지 부분을 완료하도록 설정합니다.
이렇게 하려면 다음을 수행합니다.
- 이 모듈의 Azure DevOps 프로젝트를 설정합니다.
- Azure Boards에서 이 모듈의 작업 항목을 작업 열로 이동합니다.
- 파이프라인에 변경 내용을 푸시할 수 있도록 프로젝트가 로컬로 설정되어 있는지 확인합니다.
Azure DevOps 프로젝트 가져오기
여기서는 Azure DevOps 조직이 이 모듈의 나머지 부분을 완료하도록 설정합니다. 이를 위해 템플릿을 실행하는데, 이 템플릿은 Azure DevOps에서 프로젝트를 생성합니다.
템플릿 실행
Azure DevOps 조직을 설정하는 템플릿을 실행합니다.
Visual Studio 또는 선택한 IDE에서 ADOGenerator 프로젝트를 가져와 실행합니다.
템플릿 목록에서 템플릿 번호를 입력하라는 메시지가 표시되면 Azure Pipelines를 사용하여 빌드 파이프라인에서 품질 테스트를 실행하기 위해 24를 입력한 다음 Enter 키를 누릅니다.
인증 방법을 선택합니다. PAT(개인 액세스 토큰)를 설정하고 사용하거나 디바이스 로그인을 사용할 수 있습니다.
참고
PAT를 설정하는 경우 필요한 범위에 권한을 부여 해야 합니다. 이 모듈의 경우 모든 권한을 사용할 수 있지만 실제 상황에서는 필요한 범위만 부여해야 합니다.
Azure DevOps 조직 이름을 입력한 다음 Enter 키를 누릅니다.
메시지가 표시되면 Azure DevOps PAT를 입력한 다음 Enter 키를 누릅니다.
Space Game - web - Tests와 같은 프로젝트 이름을 입력한 다음 Enter 키를 누릅니다.
프로젝트가 만들어지면 브라우저에서 Azure DevOps 조직(있는
https://dev.azure.com/<your-organization-name>/
)으로 이동하여 프로젝트를 선택합니다.
리포지토리 포크
이미 만들지 않았다면 mslearn-tailspin-spacegame-web 리포지토리를 포크하세요.
GitHub에서 mslearn-tailspin-spacegame-web 리포지토리로 이동합니다.
화면 오른쪽 위에서 포크 를 선택합니다.
GitHub 계정을 소유자로 선택한 다음 포크 만들기를 선택합니다.
중요
이 모듈의 Azure DevOps 환경 정리 페이지에는 중요한 정리 단계가 포함되어 있습니다. 환경을 정리하면 사용 가능한 빌드 시간을 늘릴 수 있습니다. 정리 단계는 이 모듈을 완료하지 않은 경우에도 수행해야 합니다.
프로젝트의 표시 유형 설정
처음에는 GitHub의 Space Game 리포지토리 포크가 퍼블릭으로 설정되고 Azure DevOps 템플릿에서 만든 프로젝트는 프라이빗으로 설정됩니다. GitHub의 퍼블릭 리포지토리에는 누구나 액세스할 수 있으며, 프라이빗 리포지토리는 사용자와 공유하도록 선택한 사용자만 액세스할 수 있습니다. 마찬가지로 Azure DevOps에서 퍼블릭 프로젝트는 인증되지 않은 사용자에게 읽기 전용 액세스를 제공하는 반면, 프라이빗 프로젝트는 사용자에게 액세스 권한을 부여하고 서비스에 액세스하기 위해 인증을 받아야 합니다.
현재로서는 이 모듈의 목적을 위해 이러한 설정을 수정할 필요가 없습니다. 그러나 개인 프로젝트의 경우 다른 사용자에게 부여하려는 표시 유형 및 액세스를 결정해야 합니다. 예를 들어 프로젝트가 오픈 소스인 경우 GitHub 리포지토리와 Azure DevOps 프로젝트를 모두 퍼블릭 상태로 만들지 선택할 수 있습니다. 프로젝트가 재산적 가치를 가지는 경우 일반적으로 GitHub 리포지토리와 Azure DevOps 프로젝트를 모두 프라이빗 상태로 설정할 수 있습니다.
나중에 프로젝트에 가장 적합한 옵션을 결정하는 데 도움이 되는 다음과 같은 리소스를 찾을 수 있습니다.
로컬로 프로젝트 설정
여기서는 Visual Studio Code에서 Space Game 프로젝트를 로드하고, Git을 구성하고, 리포지토리를 로컬로 복제하고, 시작 코드를 다운로드할 수 있도록 업스트림 원격을 설정합니다.
참고
mslearn-tailspin-spacegame-web 프로젝트를 로컬로 이미 설정한 경우 다음 섹션으로 이동할 수 있습니다.
통합 터미널 열기
Visual Studio Code는 통합 터미널과 함께 제공되므로 한 곳에서 파일을 편집하고 명령줄에서 작업할 수 있습니다.
Visual Studio Code를 시작합니다.
보기 메뉴에서 터미널을 선택합니다.
드롭다운 목록에서 bash를 선택합니다. Zsh와 같이 사용하려는 다른 Unix 셸에 익숙한 경우 대신 해당 셸을 선택합니다.
터미널 창을 사용하면 Bash, Zsh, PowerShell과 같이 시스템에 설치된 모든 셸을 선택할 수 있습니다.
여기서는 Bash를 사용합니다. Git for Windows는 Git Bash를 제공하므로 Git 명령을 쉽게 실행할 수 있습니다.
참고
Windows에서 Git Bash 가 옵션으로 나열되지 않으면 Git을 설치했는지 확인한 다음 Visual Studio Code를 다시 시작합니다.
cd
명령을 실행하여 홈 디렉터리(~
)와 같은 작업하려는 디렉터리로 이동합니다. 원하는 경우 다른 디렉터리를 선택할 수 있습니다.cd ~
Git 구성
Git 및 GitHub를 처음 사용하는 경우, 먼저 몇 가지 명령을 실행하여 ID를 Git에 연결하고 GitHub에 인증해야 합니다.
Git을 설정 하면 프로세스를 더 자세히 설명합니다.
최소한 다음 단계를 완료해야 합니다. 통합 터미널에서 다음 명령을 실행합니다.
참고
GitHub에서 2단계 인증을 이미 사용하고 있는 경우 개인 액세스 토큰을 만들고 나중에 메시지가 표시되면 암호 대신 토큰을 사용합니다.
액세스 토큰을 암호와 같이 취급하고 안전하게 보관하세요.
Visual Studio Code에서 프로젝트 설정
이 부분에서는 변경을 수행하고 파이프라인 구성을 빌드할 수 있도록 로컬로 포크를 복제합니다.
참고
리포지토리를 복제할 때 파일 이름이 너무 길다는 오류가 발생하는 경우 긴 이름이 없거나 깊이 중첩된 폴더에 리포지토리를 복제해 보세요.
로컬로 포크 복제
이제 GitHub 계정에 Space Game 웹 프로젝트의 복사본이 있습니다. 이제 복사본으로 작업할 수 있도록 컴퓨터에 해당 복사본을 다운로드하거나 ‘복제’합니다.
포크와 마찬가지로 복제본은 리포지토리의 복사본입니다. 리포지토리를 복제할 때 변경을 수행하고 예상대로 작동하는지 확인한 다음, 해당 변경 내용을 GitHub에 다시 업로드할 수 있습니다. 또한 인증된 다른 사용자가 리포지토리의 GitHub 복사본에 수행한 변경 내용과 로컬 복사본을 동기화할 수 있습니다.
Space Game 웹 프로젝트를 컴퓨터에 복제하려면 다음을 수행합니다.
GitHub에서 Space Game 웹 프로젝트(mslearn-tailspin-spacegame-web)의 포크로 이동합니다.
코드를 선택합니다. 그런 다음 HTTPS 탭에서 표시된 URL 옆에 있는 단추를 선택하여 URL을 클립보드에 복사합니다.
Visual Studio Code에서 터미널 창으로 이동합니다.
터미널에서 홈 디렉터리(
~
)와 같은 작업하려는 디렉터리로 이동합니다. 원하는 경우 다른 디렉터리를 선택할 수 있습니다.cd ~
git clone
명령을 실행합니다. 여기에 표시된 URL을 클립보드의 내용으로 바꿉니다.git clone https://github.com/your-name/mslearn-tailspin-spacegame-web.git
mslearn-tailspin-spacegame-web
디렉터리로 이동합니다. 이 디렉터리는 리포지토리의 루트 디렉터리입니다.cd mslearn-tailspin-spacegame-web
업스트림 원격 설정
‘원격’은 GitHub의 리포지토리처럼 팀 구성원이 협업하는 Git 리포지토리입니다. 여기에서 원격을 나열하고 Microsoft의 리포지토리 복사본을 가리키는 원격을 추가하여 최신 샘플 코드를 얻을 수 있습니다.
원격을 나열하려면 다음과 같이
git remote
명령을 실행합니다.git remote -v
다음과 같이 리포지토리에 대한 페치(다운로드) 및 푸시(업로드) 액세스 권한이 모두 있는 것을 확인할 수 있습니다.
origin https://github.com/username/mslearn-tailspin-spacegame-web.git (fetch) origin https://github.com/username/mslearn-tailspin-spacegame-web.git (push)
Origin 은 GitHub에서 리포지토리를 지정합니다. 다른 리포지토리에서 코드를 포크하는 경우 원래 원격(포크한 원격)의 이름을 업스트림으로 지정하는 것이 일반적입니다.
다음
git remote add
명령을 실행하여 Microsoft 리포지토리를 가리키는 원격 명명된 업스트림 을 만듭니다.git remote add upstream https://github.com/MicrosoftDocs/mslearn-tailspin-spacegame-web.git
git remote
를 다시 실행하여 다음과 같은 변경 내용을 확인합니다.git remote -v
여전히 리포지토리에 대한 페치(다운로드) 및 푸시(업로드) 액세스 권한이 모두 있음을 확인할 수 있습니다. 이제 Microsoft 리포지토리에 대한 가져오기 및 밀어넣기 액세스 권한도 있습니다.
origin https://github.com/username/mslearn-tailspin-spacegame-web.git (fetch) origin https://github.com/username/mslearn-tailspin-spacegame-web.git (push) upstream https://github.com/MicrosoftDocs/mslearn-tailspin-spacegame-web.git (fetch) upstream https://github.com/MicrosoftDocs/mslearn-tailspin-spacegame-web.git (push)
파일 탐색기에서 프로젝트 열기
Visual Studio Code에서 터미널 창은 Space Game 웹 프로젝트의 루트 디렉터리를 가리킵니다. 파일 구조를 보고 파일을 사용하려면 파일 탐색기에서 이제 프로젝트를 엽니다.
프로젝트를 여는 가장 쉬운 방법은 현재 디렉터리에서 Visual Studio Code를 다시 여는 것입니다. 이렇게 하려면 통합 터미널에서 다음 명령을 실행합니다.
code -r .
파일 탐색기에 디렉터리 및 파일 트리가 표시됩니다.
통합 터미널을 다시 엽니다. 터미널을 실행하면 웹 프로젝트의 루트에서 시작됩니다.
code
명령이 실패하면 시스템 PATH에 Visual Studio Code를 추가해야 합니다. 이를 수행하려면:
- Visual Studio Code에서 F1을 선택하거나명령 팔레트> 선택하여 명령 팔레트에 액세스합니다.
- 명령 팔레트에서 ‘셸 명령: PATH에 ‘code’ 명령 설치’.
- 이전 절차를 반복하여 파일 탐색기에서 프로젝트를 엽니다.
이제 로컬 개발 환경에서 Space Game 소스 코드 및 Azure Pipelines 구성을 사용하도록 설정되었습니다.