AWS CodeCommit 에 대한 자습서 AWS Cloud9 - AWS Cloud9

AWS Cloud9 는 더 이상 신규 고객이 사용할 수 없습니다. AWS Cloud9 의 기존 고객은 정상적으로 서비스를 계속 이용할 수 있습니다. 자세히 알아보기

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS CodeCommit 에 대한 자습서 AWS Cloud9

AWS CodeCommit 자습서를 사용하여 의 원격 코드 리포지토리와 상호 작용하도록 AWS Cloud9 개발 환경을 설정할 수 있습니다 CodeCommit. CodeCommit 는 비공개로 저장하고 관리하는 데 사용할 수 있는 소스 코드 제어 서비스입니다.Git 의 리포지토리 AWS 클라우드. 에 대한 자세한 내용은 AWS CodeCommit 사용 설명서 섹션을 CodeCommit참조하세요.

이 자습서를 따르고 이 샘플을 생성하면 에 요금이 부과될 수 있습니다 AWS 계정. 여기에는 Amazon EC2 및 와 같은 서비스에 대해 발생할 수 있는 요금이 포함됩니다 CodeCommit. 자세한 내용은 Amazon EC2 요금AWS CodeCommit 요금 섹션을 참조하세요.

사전 조건

이 샘플을 사용하기 전에 설정이 다음 요구 사항을 충족하는지 확인하세요.

  • 기존 AWS Cloud9 EC2 개발 환경이 있어야 합니다. 이 샘플에서는 Amazon Linux 또는 를 실행하는 Amazon EC2 인스턴스에 연결된 EC2 환경이 이미 있다고 가정합니다.Ubuntu 서버. 다른 환경 또는 운영 시스템이라면 이 샘플 지침을 관련 도구를 설치하는 데에 적용해야 합니다. 자세한 내용은 에서 환경 생성 AWS Cloud9 단원을 참조하십시오.

  • 기존 환경의 AWS Cloud9 IDE가 이미 열려 있습니다. 환경을 열면 는 웹 브라우저에서 해당 환경에 IDE 대한 를 AWS Cloud9 엽니다. 자세한 내용은 AWS Cloud9에서 환경 열기 단원을 참조하십시오.

1단계: 필요한 액세스 권한으로 IAM 그룹 설정

자격 AWS 증명이 의 관리자 사용자와 연결되어 AWS 계정있고 해당 사용자를 사용하여 작업하려는 CodeCommit 경우 에서 2단계: 리포지토리 생성으로 AWS CodeCommit건너뜁니다.

이 단계는 AWS Management Console 또는 AWS 명령줄 인터페이스(AWS CLI)를 사용하여 완료할 수 있습니다.

콘솔을 사용하여 필요한 액세스 권한으로 IAM 그룹 설정

  1. 아직 로그인하지 않은 AWS Management Console경우 에 로그인합니다.

    이 단계에서는 AWS 계정의 관리자 사용자에 대한 보안 인증 정보를 사용하여 로그인하는 것이 좋습니다. 이렇게 할 수 없으면 AWS 계정 관리자에게 문의하세요.

  2. IAM 콘솔을 엽니다. 이렇게 하려면 콘솔의 탐색 모음에서 서비스를 선택합니다. 그런 다음 를 선택합니다IAM.

  3. 그룹을 선택합니다.

  4. 그룹의 이름을 선택합니다.

  5. 권한 탭의 관리형 정책에서 정책 연결을 선택합니다.

  6. 정책 이름 목록에서 다음 상자 중 하나를 선택합니다.

    • CodeCommit 및 리포지토리 관련 리소스의 모든 기능에 AWSCodeCommitPowerUser 액세스하려면 선택합니다. 하지만 이렇게 하면 Amazon CloudWatch Events AWS 서비스와 같은 다른 에서 CodeCommit 리포지토리를 삭제하거나 리포지토리 관련 리소스를 생성하거나 삭제할 수 없습니다.

    • 에서 CodeCommit 리포지토리 및 관련 리소스를 완전히 제어AWSCodeCommitFullAccess하려면 를 선택합니다 AWS 계정. 여기에는 리포지토리 삭제 기능이 포함됩니다.

    목록에서 이러한 정책 이름 중 하나가 보이지 않으면 표시할 정책 이름을 Filter(필터) 상자에 입력합니다.

  7. 정책 연결을 선택하세요.

이러한 AWS 관리형 정책이 그룹에 부여하는 액세스 권한 목록을 보려면 AWS CodeCommit 사용 설명서의 AWS 대한 관리형(미리 정의) 정책을 AWS CodeCommit 참조하세요.

2단계: 에서 리포지토리 생성으로 AWS CodeCommit 건너뜁니다.

를 사용하여 필요한 액세스 권한으로 IAM 그룹 설정 AWS CLI

명령을 실행하여 필요한 액세스 권한을 설명하는 AWS 관리형 정책의 그룹 이름과 Amazon 리소스 이름(ARN)을 IAM attach-group-policy 지정합니다. 구문은 다음과 같습니다.

aws iam attach-group-policy --group-name MyGroup --policy-arn POLICY_ARN

앞의 명령에서 MyGroup을 그룹의 이름으로 바꿉니다. 를 AWS 관리형 정책의 ARN POLICY_ARN로 바꿉니다.

  • arn:aws:iam::aws:policy/AWSCodeCommitPowerUser CodeCommit 및 리포지토리 관련 리소스의 모든 기능에 액세스할 수 있습니다. 그러나 Amazon CloudWatch Events AWS 서비스와 같은 다른 에서 CodeCommit 리포지토리를 삭제하거나 리포지토리 관련 리소스를 생성하거나 삭제할 수는 없습니다.

  • arn:aws:iam::aws:policy/AWSCodeCommitFullAccess 에서 CodeCommit 리포지토리 및 관련 리소스를 완전히 제어할 수 있습니다 AWS 계정. 여기에는 리포지토리 삭제 기능이 포함됩니다.

이러한 AWS 관리형 정책이 그룹에 부여하는 액세스 권한 목록을 보려면 AWS CodeCommit 사용 설명서의 AWS 대한 관리형(사전 정의) 정책을 AWS CodeCommit 참조하세요.

2단계: 에서 리포지토리 생성 CodeCommit

이 단계에서는 콘솔을 CodeCommit 사용하여 에서 원격 코드 리포지토리를 CodeCommit 생성합니다.

CodeCommit 리포지토리가 이미 있는 경우 3단계: 원격 리포지토리에 환경 연결 로 건너뛰세요.

이 단계는 AWS Management Console 또는 AWS 명령줄 인터페이스(AWS CLI)를 사용하여 완료할 수 있습니다.

콘솔을 사용하여 에서 CodeCommit 리포지토리 생성

  1. 이전 단계에서 관리자 사용자 AWS Management Console 로 에 로그인했고 관리자 사용자를 사용하여 리포지토리를 생성하지 않으려고 한다고 가정해 보겠습니다. 그런 다음 에서 로그아웃합니다 AWS Management Console.

  2. https://console.aws.amazon.com/codecommit에서 CodeCommit 콘솔을 엽니다.

  3. 콘솔의 탐색 모음에서 리전 선택기를 사용하여 리포지토리를 생성할 AWS 리전 (예: 미국 동부(오하이오))을 선택합니다.

  4. 시작 페이지가 표시되면 [시작하기(Get started)]를 선택합니다. 그렇지 않은 경우 [리포지토리 생성(Create repository)]을 선택합니다.

  5. Create repository(리포지토리 생성) 페이지에서 Repository name(리포지토리 이름)에 새 리포지토리의 이름(예: MyDemoCloud9Repo)을 입력합니다. 다른 이름을 선택하는 경우 이 샘플 전체에서 해당 이름으로 바꿉니다.

  6. (선택 사항) Description(설명)에 리포지토리에 관한 설명을 입력합니다. 예를 들면 다음과 같이 입력할 수 있습니다. This is a demonstration repository for the AWS Cloud9 sample.

  7. 리포지토리 생성을 선택합니다. [리포지토리에 연결(Connect to your repository)] 창이 표시됩니다. 이 주제의 뒷부분에서 다른 방법으로 리포지토리에 연결하게 되므로 [닫기(Close)]를 선택합니다.

3단계: 원격 리포지토리를 환경에 연결 섹션으로 진행합니다.

를 CodeCommit 사용하여 에서 리포지토리 생성 AWS CLI

AWS CodeCommit create-repository 명령을 실행합니다. 리포지토리의 이름, 선택적 설명 및 를 지정 AWS 리전 하여 리포지토리를 생성합니다.

aws codecommit create-repository --repository-name MyDemoCloud9Repo --repository-description "This is a demonstration repository for the AWS Cloud9 sample." --region us-east-2

앞의 명령에서 us-east-2를 리포지토리를 생성할 AWS 리전 의 ID로 바꿉니다. 지원되는 리전 목록은 Amazon Web Services 일반 참조의 AWS CodeCommit 섹션을 참조하세요.

다른 이름을 사용하도록 선택하는 경우 이 샘플 전체에서 해당 이름으로 바꿉니다.

3단계: 원격 리포지토리에 환경을 연결

이 단계에서는 AWS Cloud9 IDE를 사용하여 이전 단계에서 생성하거나 식별한 CodeCommit 리포지토리에 연결합니다.

참고

로 작업하기를 원하는 경우 Git 시각적 인터페이스를 통해 원격 리포지토리를 복제할 수 있습니다. 그런 다음 에서 사용할 수 있는 Git 패널 기능을 사용하여 파일을 추가할 수 있습니다IDE.

사용 중인 AWS Cloud9 개발 환경의 유형에 따라 다음 절차 중 하나를 완료합니다.

환경 유형 따라야 할 절차

EC2 환경

  1. 의 터미널 세션에서 다음 두 명령을 IDE실행합니다.

    git config --global credential.helper '!aws codecommit credential-helper $@' git config --global credential.UseHttpPath true

    자세한 내용은 AWS CodeCommit 사용 설명서의 2단계: 와 통합의 EC2 개발 환경에서 AWS CLI 자격 증명 도우미 구성을 참조하세요 AWS Cloud9. AWS Cloud9 AWS CodeCommit

  2. 이 주제의 후반부에 나오는 4단계: 원격 리포지토리를 환경에 복제로 건너뜁니다.

SSH 환경

  1. If Git 는 아직 환경에 설치되지 않았습니다. 의 터미널 세션을 사용하여 IDE 설치합니다. 자세한 내용은 2단계: 설치를 참조하세요.Git AWS CodeCommit 사용 설명서Linux, macOS 또는 Unix에서 AWS CodeCommit 리포지토리SSH에 연결하기 위한 설정 단계.

  2. 3단계 완료: 사용 설명서의 Linux, macOS 또는 Unix에서 리포지토리에 대한 연결을 위한 설정 단계에서 Linux, macOS 또는 Unix에서 자격 증명 구성. SSH AWS CodeCommit macOS AWS CodeCommit

    에 로그인 AWS Management Console 하고 IAM 콘솔을 열라는 메시지가 표시되면 에서 관리자 사용자의 자격 증명을 사용하여 로그인하는 것이 좋습니다 AWS 계정. 이렇게 할 수 없는 경우 AWS 계정 관리자에게 문의하세요.

  3. 이 주제의 후반부에 나오는 4단계: 원격 리포지토리를 환경에 복제로 건너뜁니다.

4단계: 원격 리포지토리를 환경에 복제

이 단계에서는 AWS Cloud9 IDE를 사용하여 의 원격 리포지토리 CodeCommit 를 환경에 복제합니다.

리포지토리를 복제하려면 git clone 명령을 실행합니다. 를 리포지토리의 복제본 CLONE_URL로 바꿉니다URL.

git clone CLONE_URL

EC2 환경의 경우 로 URL 시작하는 HTTPS 복제본을 제공합니다https://. SSH 환경의 경우 로 URL 시작하는 SSH 복제본을 제공합니다ssh://.

리포지토리의 전체 복제본을 가져오려면 AWS CodeCommit 사용 설명서의 AWS CodeCommit 콘솔을 사용하여 리포지토리 세부 정보 보기를 URL참조하세요.

리포지토리에 파일이 없으면 You appear to have cloned an empty repository.와 같은 경고 메시지가 표시됩니다. 이는 예상할 수 있는 경우입니다. 나중에 설명하겠습니다.

5단계: 리포지토리에 파일 추가

이 단계에서는 AWS Cloud9 환경에 복제된 리포지토리로 세 가지 간단한 파일을 생성합니다. 다음으로 파일을 에 추가합니다.Git 복제된 리포지토리의 스테이징 영역입니다. 마지막으로 스테이징된 파일을 커밋하고 커밋을 의 원격 리포지토리로 푸시합니다 CodeCommit.

복제된 리포지토리의 이 위치에 파일이 이미 있는 경우 작업이 완료되었으며 이 샘플의 나머지 부분을 건너뛸 수 있습니다.

리포지토리에 파일을 추가하려면
  1. 새 파일을 만듭니다. 메뉴 모음에서 File(파일)New File(새 파일)을 선택합니다.

  2. 파일에 다음 콘텐츠를 입력한 다음 파일 , 저장을 선택하여 AWS Cloud9 환경의 MyDemoCloud9Repo 디렉터리bird.txt에 파일을 로 저장합니다.

    bird.txt -------- Birds are a group of endothermic vertebrates, characterized by feathers, toothless beaked jaws, the laying of hard-shelled eggs, a high metabolic rate, a four-chambered heart, and a lightweight but strong skeleton.
    참고

    이 파일을 올바른 디렉터리로 저장하는지 확인하려면 Save As(다른 이름으로 저장) 대화 상자에서 MyDemoCloud9Repo 폴더를 선택하세요. 그런 다음, Folder(폴더)에서 /MyDemoCloud9Repo이 표시되는지 확인합니다.

  3. 이름이 insect.txtreptile.txt인 파일을 다음과 같은 내용으로 두 개 더 만듭니다. MyDemoCloud9Repo 디렉터리에 파일을 저장합니다.

    insect.txt ---------- Insects are a class of invertebrates within the arthropod phylum that have a chitinous exoskeleton, a three-part body (head, thorax, and abdomen), three pairs of jointed legs, compound eyes, and one pair of antennae.
    reptile.txt ----------- Reptiles are tetrapod (four-limbed vertebrate) animals in the class Reptilia, comprising today's turtles, crocodilians, snakes, amphisbaenians, lizards, tuatara, and their extinct relatives.
  4. 이 터미널에서는 cd 명령을 실행하여 MyDemoCloud9Repo 디렉터리로 바꿉니다.

    cd MyDemoCloud9Repo
  5. git status 명령을 실행하여 파일이 MyDemoCloud9Repo 디렉터리에 성공적으로 저장되었는지 확인합니다. 두 개의 파일 모두 추적되지 않는 파일로 나열됩니다.

    Untracked files: (use "git add <file>..." to include in what will be committed) bird.txt insect.txt reptile.txt
  6. git add 명령을 실행하여 파일을 Git 스테이징 지역에 추가합니다.

    git add --all
  7. git status 명령을 다시 실행하여 파일이 Git 스테이징 지역에 성공적으로 추가되었는지 확인합니다. 변경 사항이 커밋되면 세 개 파일 모두가 나열됩니다.

    Changes to be committed: (use "git rm --cached <file>..." to unstage) new file: bird.txt new file: insect.txt new file: reptile.txt
  8. git commit 명령을 실행하여 스테이징된 파일을 커밋합니다.

    git commit -m "Added information about birds, insects, and reptiles."
  9. git push 명령을 실행하여 에서 원격 리포지토리 CodeCommit 에 커밋을 푸시합니다.

    git push -u origin master
  10. 파일이 성공적으로 푸시되었는지 확인합니다. 아직 열려 있지 않은 경우 https://console.aws.amazon.com/codecommit에서 CodeCommit 콘솔을 엽니다.

  11. 상단 탐색 모음의 오른쪽 가장자리 근처에서 리포지토리를 생성한 AWS 리전 를 선택합니다(예: 미국 동부(오하이오)).

  12. 대시보드 페이지에서 MyDemoCloud9Repo 를 선택합니다. 세 개의 파일이 표시됩니다.

CodeCommit 리포지토리 실험을 계속하려면 AWS CodeCommit 사용 설명서의 리포지토리 콘텐츠 찾아보기를 참조하세요.

를 처음 사용하는 경우 Git 리포지 CodeCommit 토리를 지저분하게 하지 않고 샘플로 실험합니다.Git Try의 리포지토리 Git 웹 사이트.

6단계: 정리

이 샘플 사용을 완료한 AWS 계정 후 에 대한 지속적인 요금을 방지하려면 CodeCommit 리포지토리를 삭제하세요. 지침은 AWS CodeCommit 사용 설명서의 AWS CodeCommit 리포지토리 삭제를 참조하세요.

또한 환경도 삭제해야 합니다. 지침에 대한 내용은 환경 삭제를 참조하십시오.