

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

# AWS CodeCommit 리포지토리에서 커밋 작업
<a name="commits"></a>

커밋은 리포지토리의 콘텐츠 및 변경 사항에 대한 스냅샷입니다. 사용자가 변경 사항을 커밋하고 푸시할 때마다 해당 정보는 저장 및 보관됩니다. 변경 사항을 커밋한 사용자, 커밋의 날짜 및 시간, 커밋 과정에서 이루어진 변경 사항 등의 정보 역시 마찬가지입니다. 또한 커밋에 태그를 추가하여 특정 커밋을 쉽게 식별할 수 있습니다. CodeCommit에서는 다음을 수행할 수 있습니다.
+ 커밋을 검토할 수 있습니다.
+ 커밋 이력을 그래프로 볼 수 있습니다.
+ 커밋을 상위 또는 다른 지정자와 비교할 수 있습니다.
+ 커밋에 주석을 추가하고 다른 사람이 작성한 주석에 댓글을 달 수 있습니다.

![\[커밋의 변경된 행에 대한 설명 추가.\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-commenting-addlinecomment.png)


CodeCommit 리포지토리로 커밋을 푸시하기 전에 먼저 로컬 컴퓨터를 리포지토리에 연결하도록 설정해야 합니다. 가장 간단한 방법에 대해 알아보려면 [Git 보안 인증 정보를 사용하는 HTTPS 사용자의 경우](setting-up-gc.md) 섹션을 참조하세요.

CodeCommit에서 리포지토리의 다른 측면으로 작업하는 방법에 대해 자세히 알아보려면 [리포지토리 작업](repositories.md), [파일 작업하기](files.md), [풀 요청 작업](pull-requests.md), [브랜치 작업](branches.md), [사용자 기본 설정으로 작업](user-preferences.md) 섹션을 참조하세요.

**Topics**
+ [에서 커밋 생성 AWS CodeCommit](how-to-create-commit.md)
+ [에서 커밋 세부 정보 보기 AWS CodeCommit](how-to-view-commit-details.md)
+ [에서 커밋 비교 AWS CodeCommit](how-to-compare-commits.md)
+ [의 커밋에 대한 설명 AWS CodeCommit](how-to-commit-comment.md)
+ [에서 Git 태그 생성 AWS CodeCommit](how-to-create-tag.md)
+ [에서 Git 태그 세부 정보 보기 AWS CodeCommit](how-to-view-tag-details.md)
+ [에서 Git 태그 삭제 AWS CodeCommit](how-to-delete-tag.md)

# 에서 커밋 생성 AWS CodeCommit
<a name="how-to-create-commit"></a>

새 리포지토리에 대한 첫 번째 커밋을 생성할 때 AWS CLI 및 **put-file** 명령을 사용합니다. 그러면 첫 번째 커밋이 만들어지며 이에 따라 새 리포지토리의 기본 브랜치를 생성 및 지정할 수 있습니다. Git 또는 AWS CLI 를 사용하여 CodeCommit 리포지토리에서 커밋을 생성할 수 있습니다. 로컬 리포지토리가 CodeCommit 리포지토리에 연결되어 있는 경우에는 Git을 사용하여 로컬 리포지토리의 커밋을 CodeCommit 리포지토리로 푸시합니다. CodeCommit 콘솔에서 직접 커밋을 생성하려면 [AWS CodeCommit 리포지토리에 파일 생성 또는 추가](how-to-create-file.md) 및 [AWS CodeCommit 리포지토리에서 파일의 콘텐츠 편집](how-to-edit-file.md) 단원을 참조하세요.

**참고**  
가장 좋은 방법은 지원되는 최신 버전의 AWS CLI, Git 및 기타 소프트웨어를 사용하는 것입니다. 를 사용하는 경우 `create-commit` 명령이 포함된 버전을 사용하고 있는지 확인하기 위해 최신 버전이 설치되어 있는지 AWS CLI확인합니다.

**Topics**
+ [를 사용하여 리포지토리에 대한 첫 번째 커밋 생성 AWS CLI](#how-to-create-first-commit)
+ [Git 클라이언트를 사용하여 커밋 생성](#how-to-create-commit-git)
+ [를 사용하여 커밋 생성 AWS CLI](#how-to-create-commit-cli)

## 를 사용하여 리포지토리에 대한 첫 번째 커밋 생성 AWS CLI
<a name="how-to-create-first-commit"></a>

 AWS CLI 및 `put-file` 명령을 사용하여 리포지토리에 대한 첫 번째 커밋을 생성할 수 있습니다. **put-file**를 사용하면 빈 리포지토리에 파일을 추가하는 첫 번째 커밋이 생성되며, 이에 따라 사용자가 지정한 이름의 브랜치가 생성됩니다. 그러면 새 브랜치가 리포지토리의 기본 브랜치로 지정됩니다.

**참고**  
CodeCommit에서 AWS CLI 명령을 사용하려면를 설치합니다 AWS CLI. 자세한 내용은 [명령줄 참조](cmd-ref.md) 단원을 참조하십시오.<a name="create-first-commit"></a>

## 를 사용하여 리포지토리에 대한 첫 번째 커밋을 생성하려면 AWS CLI


1. 로컬 컴퓨터에서 CodeCommit 리포지토리에 첫 번째 파일로 추가할 파일을 만듭니다. 일반적인 방법은 다른 리포지토리 사용자에게 이 리포지토리의 용도를 설명하는 `README.md` 마크다운 파일을 만드는 것입니다. `README.md` 파일을 포함하면, CodeCommit 콘솔의 리포지토리에 대한 **코드** 페이지 하단에 파일 내용이 자동으로 표시됩니다.

1. 터미널 또는 명령줄에서 다음을 지정하여 **put-file** 명령을 실행합니다.
   + 첫 파일을 추가할 리포지토리의 이름.
   + 기본 브랜치로 생성하려는 브랜치의 이름.
   + 파일의 로컬 위치. 이 위치에 사용되는 구문은 로컬 운영 체제에 따라 달라집니다.
   + 업데이트된 파일이 리포지토리에 저장된 경로를 포함하여 추가할 파일의 이름.
   + 이 파일에 연결할 사용자 이름과 이메일.
   + 이 파일을 추가한 이유를 설명하는 커밋 메시지.

   사용자 이름, 이메일 주소 및 커밋 메시지는 선택 사항이지만, 다른 사용자에게 변경을 수행한 사용자와 변경 이유를 알려 줄 수 있습니다. 사용자 이름을 제공하지 않는 경우, CodeCommit은 IAM 사용자 이름이나 콘솔 로그인 파생물을 작성자 이름으로 사용하도록 기본 설정되어 있습니다.

   예를 들어, 예제 base 6 인코딩 파일 콘텐츠가 포함된 *README.md* 파일을 *MyDemoRepo*라는 리포지토리에 *development*라는 브랜치에 추가하려면

   ```
   aws codecommit put-file --repository-name MyDemoRepo --branch-name development --file-path README.md --file-content "EXAMPLE0123456789example0123456789EXAMPLE1" --name "Mary Major" --email "mary_major@example.com" --commit-message "I added a quick readme for our new team repository."
   ```

   이 명령이 제대로 실행되면 다음과 비슷한 출력이 반환됩니다.

   ```
   {
       "commitId": "724caa36EXAMPLE",
       "blobId": "a8a94062EXAMPLE",
       "treeId": "08b2fc73EXAMPLE"
   }
   ```

## Git 클라이언트를 사용하여 커밋 생성
<a name="how-to-create-commit-git"></a>

로컬 컴퓨터에 설치된 Git 클라이언트를 사용하여 커밋을 생성한 후, 그러한 커밋을 CodeCommit 리포지토리에 푸시할 수 있습니다.

1. [설정 ](setting-up.md)을 포함한 사전 필수 단계를 완료합니다.
**중요**  
설정을 완료하지 않았으면 Git를 사용하여 리포지토리에 연결하거나 커밋할 수 없습니다.

1. 올바른 브랜치에서 커밋을 생성해야 합니다. 사용 가능한 브랜치 목록을 조회하여 현재 어떤 브랜치를 사용하도록 설정되어 있는지 확인하려면 **git branch** 명령을 실행합니다. 모든 브랜치가 표시됩니다. 현재 설정된 브랜치 옆에 별표(`*`)가 표시됩니다. 다른 브랜치로 전환하려면 **git checkout *branch-name*** 명령을 실행합니다. 커밋을 처음하는 경우에는 **git config ** 명령을 실행하여 해당 브랜치에 사용할 이름으로 초기 브랜치를 생성하도록 Git 클라이언트를 구성합니다. 예를 들어, 기본 브랜치에 *development*라는 이름을 붙이려면 다음과 같이 합니다.

   ```
   git config --local init.defaultBranch development
   ```
**작은 정보**  
이 명령은 CLI 버전 2.28 이상에서만 사용할 수 있습니다.  
이 명령을 실행하여, 새로 생성한 모든 리포지토리의 기본 브랜치 이름을 **development**으로 설정할 수도 있습니다.  

   ```
   git config --global init.defaultBranch development
   ```

1. 브랜치를 변경합니다(파일 추가, 수정 또는 삭제 등).

   예를 들어 로컬 리포지토리에서 다음 텍스트를 사용하여 `bird.txt`라는 이름의 파일을 생성합니다.

   ```
   bird.txt
   --------
   Birds (class Aves or clade Avialae) are feathered, winged, two-legged, warm-blooded, egg-laying vertebrates.
   ```

1. **git status** 명령을 실행하여 `bird.txt`가 대기 중인 어떤 커밋에도 포함되지 않았음을 나타내야 합니다.

   ```
   ...        
   Untracked files:
     (use "git add <file>..." to include in what will be committed)
           
           bird.txt
   ```

1. **git add bird.txt** 명령을 실행하여 대기 중인 커밋에 새로운 파일을 포함합니다.

1. **git status** 명령을 다시 실행한 경우 다음과 비슷한 출력이 표시되어야 합니다. 이 메시지는 `bird.txt`가 이제 대기 중인 커밋의 일부가 되었거나 커밋에 스테이징되었음을 나타냅니다.

   ```
   ...
   Changes to be committed:
     (use "git reset HEAD <file>..." to unstage)
       
           new file:   bird.txt
   ```

1. 커밋을 완료하려면 `-m` 옵션으로 **git commit** 명령을 실행합니다(예: ** git commit -m "*Adding bird.txt to the repository.*"**). `-m` 옵션이 커밋 메시지를 생성합니다.

1. **git status** 명령을 다시 실행한 경우 다음과 비슷한 출력이 표시되어야 합니다. 이 메시지는 해당 커밋이 로컬 리포지토리에서 CodeCommit 리포지토리로 푸시될 준비가 되었음을 나타냅니다.

   ```
   ...    
   nothing to commit, working directory clean
   ```

1. 완료된 커밋을 로컬 리포지토리에서 CodeCommit 리포지토리로 푸시하기 전에 **git diff --stat *remote-name*/*branch-name***을 실행하여 어떤 커밋을 푸시하는지 확인할 수 있습니다. 이때 *remote-name*은 로컬 리포지토리가 CodeCommit 리포지토리에 사용하는 별명이고, *branch-name*은 비교 대상인 브랜치의 이름입니다.
**작은 정보**  
별명을 가져오려면 **git remote**을 실행합니다. 브랜치 이름 목록을 가져오려면 **git branch** 명령을 실행합니다. 현재 설정된 브랜치 옆에 별표(`*`)가 표시됩니다. 또한 **git status** 명령을 실행해도 현재 브랜치 이름을 가져올 수 있습니다.
**참고**  
리포지토리를 복제한 경우 로컬 리포지토리의 관점에서 *remote-name*은 CodeCommit 리포지토리의 이름이 아닙니다. 리포지토리를 복제할 때 *remote-name*은 자동으로 `origin`으로 설정됩니다.

   예를 들어 **git diff --stat origin/main** 명령을 실행하면 다음과 비슷한 메시지가 출력됩니다.

   ```
   bird.txt | 1 +
   1 file changed, 1 insertion(+)
   ```

   출력된 내용은 로컬 리포지토리를 CodeCommit 리포지토리에 이미 연결했다고 가정합니다. (지침은 [리포지토리에 연결](how-to-connect.md) 단원을 참조하세요.)

1. 해당 커밋을 로컬 리포지토리에서 CodeCommit 리포지토리로 푸시할 준비가 되었으면 **git push *remote-name* *branch-name*** 명령을 실행합니다. 여기서 *remote-name*은 로컬 리포지토리가 CodeCommit 리포지토리에 사용하는 별명이고, *branch-name*은 CodeCommit 리포지토리에 푸시할 브랜치의 이름입니다.

   예를 들어 **git push origin main** 명령을 실행하면 다음과 비슷한 메시지가 출력됩니다.

   HTTPS의 경우에는 다음과 같이 합니다.

   ```
   Counting objects: 7, done.
   Delta compression using up to 4 threads.
   Compressing objects: 100% (4/4), done.
   Writing objects: 100% (5/5), 516 bytes | 0 bytes/s, done.
   Total 5 (delta 2), reused 0 (delta 0)
   remote:
   To https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo
       b9e7aa6..3dbf4dd main -> main
   ```

   SSH의 경우:

   ```
   Counting objects: 7, done.
   Delta compression using up to 4 threads.
   Compressing objects: 100% (4/4), done.
   Writing objects: 100% (5/5), 516 bytes | 0 bytes/s, done.
   Total 5 (delta 2), reused 0 (delta 0)
   remote:
   To ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo
       b9e7aa6..3dbf4dd main -> main
   ```
**작은 정보**  
`-u` 옵션을 **git push**에 추가하면(예: **git push -u origin main**) 업스트림 추적 정보가 설정되었기 때문에 향후에 **git push** 명령만 실행하면 됩니다. 업스트림 추적 정보를 보려면 **git remote show *remote-name***을 실행합니다(예: **git remote show origin**).

다른 옵션들에 대해서는 Git 설명서를 참조하세요.

## 를 사용하여 커밋 생성 AWS CLI
<a name="how-to-create-commit-cli"></a>

 AWS CLI 및 `create-commit` 명령을 사용하여 지정된 브랜치의 끝에 리포지토리에 대한 커밋을 생성할 수 있습니다. 참조되지 않은 병합 커밋을 생성하여 두 커밋 지정자의 병합 결과를 나타낼 수도 있습니다. 자세한 내용은 [참조되지 않은 커밋 생성](how-to-resolve-conflict-pull-request.md#create-unreferenced-merge-commit)을 참조하세요.

**참고**  
CodeCommit에서 AWS CLI 명령을 사용하려면를 설치합니다 AWS CLI. 자세한 내용은 [명령줄 참조](cmd-ref.md) 단원을 참조하십시오.<a name="create-commit"></a>

**커밋 생성**

1. 로컬 컴퓨터에서 CodeCommit 리포지토리에 커밋할 변경을 수행합니다.

1. 터미널 또는 명령줄에서 다음을 지정하여 **create-commit** 명령을 실행합니다.
   + 변경 사항을 커밋할 리포지토리
   + 변경 사항을 커밋할 브랜치
   + 해당 브랜치에서 수행된 가장 최근 커밋의 축약되지 않은 커밋 ID(팁 또는 헤드 커밋 또는 상위 커밋 ID)
   + 수행한 변경으로 인해 그러한 폴더의 내용이 삭제되면 빈 폴더를 유지할지 여부. 기본적으로 이 값은 false입니다.
   + 추가, 변경 또는 삭제하려는 파일 정보
   + 이러한 변경 사항에 연결할 사용자 이름과 이메일
   + 이러한 변경을 수행한 이유를 설명하는 커밋 메시지

   사용자 이름, 이메일 주소 및 커밋 메시지는 선택 사항이지만, 다른 사용자에게 변경을 수행한 사용자와 변경 이유를 알려주세요. 사용자 이름을 제공하지 않는 경우, CodeCommit은 IAM 사용자 이름이나 콘솔 로그인 파생물을 작성자 이름으로 사용하도록 기본 설정되어 있습니다.

   예를 들어, `README.md` 파일을 *MyDemorepo*라는 리포지토리의 *main* 브랜치에 추가하는 리포지토리 커밋을 생성하려면 다음과 같이 합니다. 파일 내용은 Base64에 있으며 “Welcome to our team repository\$1”라고 쓰여 있습니다.

   ```
   aws codecommit create-commit --repository-name MyDemoRepo --branch-name main --parent-commit-id 4c925148EXAMPLE --put-files "filePath=README.md,fileContent=V2VsY29tZSB0byBvdXIgdGVhbSByZXBvc2l0b3J5IQo="
   ```
**작은 정보**  
상위 커밋 ID를 가져오려면 [get-branch](how-to-view-branch-details.md#how-to-view-branch-details-cli-details) 명령을 실행합니다.

   이 명령이 제대로 실행되면 다음과 비슷한 출력이 반환됩니다.

   ```
   {
       "commitId": "4df8b524-EXAMPLE",
       "treeId": "55b57003-EXAMPLE",
       "filesAdded": [
           {
               "blobId": "5e1c309dEXAMPLE",
               "absolutePath": "meeting.md",
               "fileMode": "NORMAL"
           }
       ],
       "filesDeleted": [],
       "filesUpdated": []
   }
   ```

   *file1.py* 및 *file2.txt*라는 파일을 변경하는 커밋을 생성하려면, 한 파일의 이름을 *picture.png*에서 *image1.png*로 바꾸고, 그 파일을 *pictures*라는 디렉터리에서 *images라는* 디렉터리로 옮긴 다음, *MyDemoRepo*라는 리포지토리 내에서 가장 최근 커밋의 ID가 *4c925148EXAMPLE*이고 이름이 *MyFeatureBranch*인 브랜치의 *ExampleSolution.py*라는 파일을 삭제합니다.

   ```
   aws codecommit create-commit --repository-name MyDemoRepo --branch-name MyFeatureBranch --parent-commit-id 4c925148EXAMPLE --author-name "Saanvi Sarkar"
    --email "saanvi_sarkar@example.com" --commit-message "I'm creating this commit to update a variable name in a number of files."
    --keep-empty-folders false  --put-files '{"filePath": "file1.py", "fileMode": "EXECUTABLE", "fileContent": "bucket_name = sys.argv[1] region = sys.argv[2]"}'
   '{"filePath": "file2.txt", "fileMode": "NORMAL", "fileContent": "//Adding a comment to explain the variable changes in file1.py"}' '{"filePath": "images/image1.png",
   "fileMode": "NORMAL", "sourceFile": {"filePath": "pictures/picture.png", "isMove": true}}' --delete-files filePath="ExampleSolution.py"
   ```
**참고**  
**--put-files** 세그먼트의 구문은 운영 체제에 따라 다릅니다. 위의 예제는 Linux, macOS, Unix 사용자, 그리고 Bash 에뮬레이터가 포함된 Windows 사용자에게 최적화된 것입니다. 명령줄 또는 Powershell에서 Windows 사용자는 해당 시스템에 적합한 구문을 사용해야 합니다.

   이 명령이 제대로 실행되면 다음과 비슷한 출력이 반환됩니다.

   ```
   {
      "commitId": "317f8570EXAMPLE",
      "treeId": "347a3408EXAMPLE",
      "filesAdded": [
           {
           "absolutePath": "images/image1.png",
           "blobId": "d68ba6ccEXAMPLE",
           "fileMode": "NORMAL"
           }
       ],
       "filesUpdated": [
           {
           "absolutePath": "file1.py",
           "blobId": "0a4d55a8EXAMPLE",
           "fileMode": "EXECUTABLE"
           },
           {
           "absolutePath": "file2.txt",
           "blobId": "915766bbEXAMPLE",
           "fileMode": "NORMAL"
           }
       ],
       "filesDeleted": [
           {
           "absolutePath": "ExampleSolution.py",
           "blobId": "4f9cebe6aEXAMPLE",
           "fileMode": "EXECUTABLE"
           },
           {
           "absolutePath": "pictures/picture.png",
           "blobId": "fb12a539EXAMPLE",
           "fileMode": "NORMAL"
           }
       ]
   }
   ```

# 에서 커밋 세부 정보 보기 AWS CodeCommit
<a name="how-to-view-commit-details"></a>

 AWS CodeCommit 콘솔을 사용하여 리포지토리에서 커밋 기록을 찾아볼 수 있습니다. 이를 통해 다음 사항을 포함한 리포지토리 변경 사항을 파악할 수 있습니다.
+ 변경 시점 및 변경 주체
+ 특정 커밋이 브랜치에 병합된 시점

브랜치에 대한 커밋 이력을 조회하는 것도 브랜치 간 차이를 이해하는 데 도움이 될 수 있습니다. 태깅을 사용하는 경우에는 태그로 레이블이 지정된 커밋과 태그가 지정된 커밋의 부모를 신속하게 조회할 수도 있습니다. 명령줄에서 Git을 사용해 로컬 리포지토리 또는 CodeCommit 리포지토리의 커밋에 대한 세부 정보를 볼 수 있습니다.

## 리포지토리의 커밋 검색
<a name="how-to-view-commit-details-console"></a>

 AWS CodeCommit 콘솔을 사용하여 리포지토리에 대한 커밋 기록을 찾아볼 수 있습니다. 또한 리포지토리 및 그 브랜치 내 커밋을 시간 경과에 따라 표기한 그래프 형태로 볼 수 있습니다. 이를 통해 변경 시점을 포함한 리포지토리의 이력을 이해할 수 있습니다.

**참고**  
**git rebase** 명령을 사용하여 리포지토리를 리베이스하면 리포지토리의 이력이 변경되어 커밋의 순서가 흐트러져 보일 수 있습니다. 자세한 내용은 [Git Branching-Rebasing](https://git-scm.com/book/en/v2/Git-Branching-Rebasing) 또는 해당 Git 문서를 참조하세요.

**Topics**
+ [리포지토리의 커밋 이력 검색](#how-to-view-commit-details-console-history)
+ [리포지토리의 커밋 이력을 그래프 형태로 보기](#how-to-view-commit-details-console-visualizer)

### 리포지토리의 커밋 이력 검색
<a name="how-to-view-commit-details-console-history"></a>

커미터에 대한 정보와 커밋 메시지를 포함해 해당 리포지토리의 특정 브랜치 또는 태그에 대한 커밋 이력을 조회할 수 있습니다. 또한 커밋에 대한 코드도 볼 수 있습니다.

**커밋 이력을 찾아보려면**

1. [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home)에서 CodeCommit 콘솔을 엽니다.

1. **리포지토리**에서, 커밋 이력을 보고자 하는 리포지토리를 선택합니다.

1. 탐색 창에서 **커밋**을 선택합니다. 커밋 이력 보기에 기본 브랜치의 리포지토리에 대한 커밋 이력이 최신 커밋 날짜부터 순서대로 표시됩니다. 날짜 및 시간은 협정 세계시(UTC)로 표시됩니다. 보기 선택 버튼을 누른 후 목록에서 다른 브랜치를 선택하면 그 브랜치의 커밋 이력을 볼 수 있습니다. 리포지토리에 태그를 사용하고 있다면 보기 선택 버튼에서 태그를 선택하여 그 태그가 있는 커밋과 그 부모 커밋을 조회할 수 있습니다.  
![\[콘솔의 커밋 보기\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-commit-list.png)

1. 커밋과 그 상위 항목 간의 차이와 변경 내용에 대한 주석을 보려면 약식 커밋 ID를 선택합니다. 자세한 내용은 [한 커밋을 상위 커밋과 비교](how-to-compare-commits.md#how-to-compare-commits-parent) 및 [커밋에 대한 주석 추가](how-to-commit-comment.md) 섹션을 참조하세요. 브랜치, 태그, 커밋 ID 등 한 커밋과 기타 커밋 지정자 간의 차이를 보려면 [임의의 두 커밋 지정자 비교](how-to-compare-commits.md#how-to-compare-commits-compare) 단원을 참조하세요.

1. 다음 중 한 개 이상을 수행할 수 있습니다.
   + 변경이 이루어진 날짜와 시간을 보려면 커밋 날짜 위에 마우스 포인터를 놓으세요.
   + 축약되지 않은 커밋 ID를 보려면 커밋 ID를 복사하여 텍스트 편집기 또는 기타 위치에 붙여 넣습니다. 복사하려면 **ID 복사**를 선택합니다.
   + 커밋 당시의 코드를 보려면 **찾아보기**를 선택합니다. 해당 커밋 시점의 리포지토리 콘텐츠가 **코드** 보기에 표시됩니다. 보기 선택 버튼에 브랜치 또는 태그 대신에 약식 커밋 ID가 표시됩니다.

### 리포지토리의 커밋 이력을 그래프 형태로 보기
<a name="how-to-view-commit-details-console-visualizer"></a>

특정 리포지토리에 대한 커밋을 그래프 형태로 볼 수 있습니다. **커밋 시각화 도우미** 보기에는 해당 리포지토리의 한 브랜치에 대한 모든 커밋이 방향성 비사이클 그래프(DAG) 형태로 표시됩니다. 이 그래프를 통해 커밋과 관련 기능이 추가 또는 병합된 시점을 알 수 있습니다. 또한 다른 변경 사항과 관련해 이루어진 변경 사항을 정확히 식별할 수 있습니다.

**참고**  
패스트 포워드 방법을 사용해 병합한 커밋은 커밋 그래프에 별도의 줄로 표시되지 않습니다.

**커밋 그래프를 보려면**

1. [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home)에서 CodeCommit 콘솔을 엽니다.

1. **리포지토리**에서 커밋 그래프를 보고자 하는 리포지토리를 선택합니다.

1. 탐색 창에서 **커밋**을 선택한 다음 **커밋 시각화 도우미** 탭을 선택합니다.  
![\[콘솔에서 리포지토리를 그래프 형태로 보기\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-cv-complex1.png)

   커밋 그래프에서 각 커밋 메시지의 약식 커밋 ID 및 제목이 그래프의 해당 시점 옆에 표시됩니다.
**참고**  
그래프는 한 페이지에 최대 35개의 브랜치를 표시할 수 있습니다. 브랜치가 35개를 넘는 경우에는 너무 복잡하여 표시되지 않습니다. 이 경우 보기를 다음과 같은 두 가지 방법으로 단순화할 수 있습니다.  
보기 선택 버튼을 사용하여 특정 브랜치에 대한 그래프를 표시
축약되지 않은 커밋 ID를 검색 상자에 붙여 넣어 해당 커밋에서 그래프를 렌더링

1. 특정 커밋에서 새 그래프를 렌더링하려면 그 커밋에 해당하는 그래프에서 시점을 선택합니다. 보기 선택 버튼이 약식 커밋 ID로 변경됩니다.  
![\[특정 커밋에서 렌더링된 새 그래프\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-cv-commit.png)

## 커밋 세부 정보 보기 (AWS CLI)
<a name="how-to-view-commit-details-cli"></a>

Git를 통해 커밋에 대한 세부 정보를 조회할 수 있습니다. 를 사용하여 다음 명령을 실행 AWS CLI 하여 로컬 리포지토리 또는 CodeCommit 리포지토리의 커밋에 대한 세부 정보를 볼 수도 있습니다.
+ 커밋에 대한 정보를 보려면 **[aws codecommit get-commit](#how-to-view-commit-details-cli-commit)**을 실행합니다.
+ 여러 커밋에 대한 정보를 보려면 **[aws codecommit batch-get-commits](#how-to-view-commit-details-cli-batch-get-commits)**을 실행합니다.
+ 병합 커밋에 대한 정보를 보려면 **[aws codecommit get-merge-commit](#how-to-view-commit-details-cli-merge-commit)**을 실행합니다.
+ 커밋 지정자의 변경 사항에 대한 정보를 보려면(브랜치, 태그, HEAD 또는 커밋 ID와 같은 기타 정규화된 참조) **[aws codecommit get-differences](#how-to-view-commit-details-cli-differences)**를 실행합니다.
+ 리포지토리에 있는 Git blob 객체의 base64 인코딩 내용을 보려면 **[aws codecommit get-blob](#how-to-view-commit-details-cli-blob)**을 실행합니다.

### 커밋에 대한 정보를 보려면
<a name="how-to-view-commit-details-cli-commit"></a>

1. 다음을 지정하여 **aws codecommit get-commit** 명령을 실행합니다.
   + CodeCommit 리포지토리의 이름(`--repository-name` 옵션 사용)
   + 축약되지 않은 커밋 ID 

   예를 들어 `MyDemoRepo`라는 CodeCommit 리포지토리에서 ID가 `317f8570EXAMPLE`인 커밋에 대한 정보를 보려면 다음을 수행합니다.

   ```
   aws codecommit get-commit  --repository-name MyDemoRepo  --commit-id 317f8570EXAMPLE 
   ```

1. 이 명령이 제대로 실행되면 다음 사항이 출력됩니다.
   + 타임스탬프 형식의 날짜 및 협정 세계시(UTC) 오프셋을 포함한 커밋 작성자(Git에 구성됨) 정보
   + 타임스탬프 형식의 날짜 및 UTC 오프셋을 포함한 커미터(Git에 구성됨) 정보
   + 커밋이 존재하는 Git 트리의 ID
   + 상위 커밋의 커밋 ID
   + 커밋 메시지

   다음은 위 예제 명령의 출력 예입니다.

   ```
   {
       "commit": {
           "additionalData": "",
           "committer": {
               "date": "1484167798 -0800",
               "name": "Mary Major",
               "email": "mary_major@example.com"
           },
           "author": {
               "date": "1484167798 -0800",
               "name": "Mary Major",
               "email": "mary_major@example.com"
           },
           "treeId": "347a3408EXAMPLE",
           "parents": [
               "4c925148EXAMPLE"
           ],
           "message": "Fix incorrect variable name"
       }
   }
   ```

### 병합 커밋에 대한 정보를 보려면
<a name="how-to-view-commit-details-cli-merge-commit"></a>

1. 다음을 지정하여 **get-merge-commit** 명령을 실행합니다.
   + 병합 소스의 커밋 지정자(**--source-commit-specifier** 옵션 사용).
   + 병합 대상의 커밋 지정자(**--destination-commit-specifier** 옵션 사용).
   + 사용하려는 병합 옵션(**--merge-option** 옵션 사용).
   + 리포지토리의 이름(**--repository-name** 옵션 사용).

   예를 들어, *MyDemoRepo*라는 리포지토리에서 *삼방향 병합* 전략을 사용하여 *bugfix-bug1234* 소스 브랜치와 *main*이라는 대상 브랜치에 대한 병합 커밋에 대한 정보를 보려면 다음과 같이 합니다.

   ```
   aws codecommit get-merge-commit --source-commit-specifier bugfix-bug1234 --destination-commit-specifier main --merge-option THREE_WAY_MERGE --repository-name MyDemoRepo
   ```

1. 이 명령이 제대로 실행되면 이 명령의 출력으로 다음과 비슷한 정보가 반환됩니다.

   ```
   {
       "sourceCommitId": "c5709475EXAMPLE", 
       "destinationCommitId": "317f8570EXAMPLE", 
       "baseCommitId": "fb12a539EXAMPLE",
       "mergeCommitId": "ffc4d608eEXAMPLE"
   }
   ```

### 여러 커밋에 대한 정보 보기
<a name="how-to-view-commit-details-cli-batch-get-commits"></a>

1. 다음을 지정하여 **batch-get-commits** 명령을 실행합니다.
   + CodeCommit 리포지토리의 이름(`--repository-name` 옵션 사용)
   + 정보를 보려는 모든 커밋에 대한 전체 커밋 ID의 목록 

   예를 들어 `MyDemoRepo`라는 CodeCommit 리포지토리에서 ID가 `317f8570EXAMPLE` 및 `4c925148EXAMPLE`인 커밋에 대한 정보를 보려면 다음과 같이 합니다.

   ```
   aws codecommit batch-get-commits  --repository-name MyDemoRepo  --commit-ids 317f8570EXAMPLE 4c925148EXAMPLE
   ```

1. 이 명령이 제대로 실행되면 다음 사항이 출력됩니다.
   + 타임스탬프 형식의 날짜 및 협정 세계시(UTC) 오프셋을 포함한 커밋 작성자(Git에 구성됨) 정보
   + 타임스탬프 형식의 날짜 및 UTC 오프셋을 포함한 커미터(Git에 구성됨) 정보
   + 커밋이 존재하는 Git 트리의 ID
   + 상위 커밋의 커밋 ID
   + 커밋 메시지

   다음은 위 예제 명령의 출력 예입니다.

   ```
   {
       "commits": [
         {
           "additionalData": "",
           "committer": {
               "date": "1508280564 -0800",
               "name": "Mary Major",
               "email": "mary_major@example.com"
           },
           "author": {
               "date": "1508280564 -0800",
               "name": "Mary Major",
               "email": "mary_major@example.com"
           },
           "commitId": "317f8570EXAMPLE",
           "treeId": "1f330709EXAMPLE",
           "parents": [
               "6e147360EXAMPLE"
           ],
           "message": "Change variable name and add new response element"
       },
       {
           "additionalData": "",
           "committer": {
               "date": "1508280542 -0800",
               "name": "Li Juan",
               "email": "li_juan@example.com"
           },
           "author": {
               "date": "1508280542 -0800",
               "name": "Li Juan",
               "email": "li_juan@example.com"
           },
           "commitId": "4c925148EXAMPLE",
           "treeId": "1f330709EXAMPLE",
           "parents": [
               "317f8570EXAMPLE"
           ],
           "message": "Added new class"
       }   
   }
   ```

### 커밋 지정자에 대한 변경 사항 관련 정보를 보려면
<a name="how-to-view-commit-details-cli-differences"></a>

1. 다음을 지정하여 **aws codecommit get-differences** 명령을 실행합니다.
   + CodeCommit 리포지토리의 이름(`--repository-name` 옵션 사용)
   + 정보를 조회하고 싶은 커밋 지정자. `--after-commit-specifier`만 있으면 됩니다. `--before-commit-specifier`를 지정하지 않으면 현재 `--after-commit-specifier`인 파일이 모두 표시됩니다.

   예를 들어, `MyDemoRepo`이라는 CodeCommit 리포지토리에서 ID가 `317f8570EXAMPLE` 및 `4c925148EXAMPLE`인 커밋들 사이의 차이에 대한 정보를 보려면 다음을 수행합니다.

   ```
   aws codecommit get-differences  --repository-name MyDemoRepo  --before-commit-specifier 317f8570EXAMPLE --after-commit-specifier 4c925148EXAMPLE
   ```

1. 이 명령이 제대로 실행되면 다음 사항이 출력됩니다.
   + 변경 유형(A: 추가, D: 삭제, M: 수정)을 포함한 차이점 목록
   + 파일 변경 유형의 모드
   + 해당 변경 사항이 포함된 Git BLOB 객체의 ID

   다음은 위 예제 명령의 출력 예입니다.

   ```
   {
       "differences": [
           {
               "afterBlob": {
                   "path": "blob.txt",
                   "blobId": "2eb4af3bEXAMPLE",
                   "mode": "100644"
               },
               "changeType": "M",
               "beforeBlob": {
                   "path": "blob.txt",
                   "blobId": "bf7fcf28fEXAMPLE",
                   "mode": "100644"
               }
           }
       ]
   }
   ```

### Git BLOB 객체에 대한 정보 보기
<a name="how-to-view-commit-details-cli-blob"></a>

1. 다음을 지정하여 **aws codecommit get-blob** 명령을 실행합니다.
   + CodeCommit 리포지토리의 이름(`--repository-name` 옵션 사용)
   + Git BLOB의 ID(`--blob-id ` 옵션) 

   예를 들어 `MyDemoRepo`라는 CodeCommit 리포지토리에서 ID가 `2eb4af3bEXAMPLE`인 Git BLOB에 대한 정보를 보려면 다음을 수행합니다.

   ```
   aws codecommit get-blob  --repository-name MyDemoRepo  --blob-id 2eb4af3bEXAMPLE
   ```

1. 이 명령이 제대로 실행되면 다음 사항이 출력됩니다.
   + 대개 파일인 BLOB의 base64 인코딩 콘텐츠

   예를 들어 이전 명령의 실행 결과는 다음과 비슷하게 출력될 수 있습니다.

   ```
   {
       "content": "QSBCaW5hcnkgTGFyToEXAMPLE="
   }
   ```

## 커밋 세부 정보 보기 (Git)
<a name="how-to-view-commit-details-git"></a>

이 단계를 수행하려면 먼저 로컬 리포지토리를 CodeCommit 리포지토리에 연결하고 변경 사항을 커밋한 상태이어야 합니다. 지침은 [리포지토리에 연결](how-to-connect.md) 섹션을 참조하세요.

리포지토리에 대한 가장 최근 커밋의 변경 사항을 표시하려면 **git show** 명령을 실행합니다.

```
git show
```

이 명령을 실행하면 다음과 비슷하게 출력됩니다.

```
commit 4f8c6f9d
Author: Mary Major <mary.major@example.com>
Date:   Mon May 23 15:56:48 2016 -0700

    Added bumblebee.txt

diff --git a/bumblebee.txt b/bumblebee.txt
new file mode 100644
index 0000000..443b974
--- /dev/null
+++ b/bumblebee.txt
@@ -0,0 +1 @@
+A bumblebee, also written bumble bee, is a member of the bee genus Bombus, in the family Apidae.
\ No newline at end of file
```

**참고**  
이 예시부터는 커밋 ID가 축약되어 있습니다. 축약되지 않은 커밋 ID는 표시되지 않습니다.

변경된 사항을 보려면 해당 커밋 ID로 **git show** 명령을 사용합니다.

```
git show 94ba1e60

commit 94ba1e60
Author: John Doe <johndoe@example.com>
Date:   Mon May 23 15:39:14 2016 -0700

    Added horse.txt

diff --git a/horse.txt b/horse.txt
new file mode 100644
index 0000000..080f68f
--- /dev/null
+++ b/horse.txt
@@ -0,0 +1 @@
+The horse (Equus ferus caballus) is one of two extant subspecies of Equus ferus.
```

두 커밋 사이의 차이점을 보려면 다음과 같이 **git diff** 명령을 실행하고 두 커밋 ID를 포함시킵니다.

```
git diff ce22850d 4f8c6f9d
```

이 예시에서 두 커밋 간의 차이점은 두 파일이 추가되었다는 것입니다. 이 명령을 실행하면 다음과 비슷하게 출력됩니다.

```
diff --git a/bees.txt b/bees.txt
new file mode 100644
index 0000000..cf57550
--- /dev/null
+++ b/bees.txt
@@ -0,0 +1 @@
+Bees are flying insects closely related to wasps and ants, and are known for their role in pollination and for producing honey and beeswax.
diff --git a/bumblebee.txt b/bumblebee.txt
new file mode 100644
index 0000000..443b974
--- /dev/null
+++ b/bumblebee.txt
@@ -0,0 +1 @@
+A bumblebee, also written bumble bee, is a member of the bee genus Bombus, in the family Apidae.
\ No newline at end of file
```

Git을 사용해 로컬 리포지토리의 커밋에 대한 세부 정보를 보려면 다음과 같이 **git log** 명령을 실행합니다.

```
git log
```

이 명령이 제대로 실행되면 다음과 비슷하게 출력됩니다.

```
commit 94ba1e60
Author: John Doe <johndoe@example.com>
Date:   Mon May 23 15:39:14 2016 -0700

    Added horse.txt

commit 4c925148
Author: Jane Doe <janedoe@example.com>
Date:   Mon May 22 14:54:55 2014 -0700

    Added cat.txt and dog.txt
```

커밋 ID와 메시지만 표시하려면 다음과 같이 **git log --pretty=oneline** 명령을 실행합니다.

```
git log --pretty=oneline
```

이 명령이 제대로 실행되면 다음과 비슷하게 출력됩니다.

```
94ba1e60 Added horse.txt
4c925148 Added cat.txt and dog.txt
```

다른 옵션들에 대해서는 Git 설명서를 참조하세요.

# 에서 커밋 비교 AWS CodeCommit
<a name="how-to-compare-commits"></a>

CodeCommit 콘솔을 사용하여 CodeCommit 리포지토리의 커밋 지정자 간의 차이점을 볼 수 있습니다. 한 커밋과 상위 커밋 간의 차이를 빠르게 확인할 수 있습니다. 커밋 ID를 포함하여 두 참조를 비교할 수도 있습니다.

**Topics**
+ [한 커밋을 상위 커밋과 비교](#how-to-compare-commits-parent)
+ [임의의 두 커밋 지정자 비교](#how-to-compare-commits-compare)

## 한 커밋을 상위 커밋과 비교
<a name="how-to-compare-commits-parent"></a>

한 커밋과 상위 커밋 간의 차이를 빠르게 확인하여 커밋 메시지, 커미터, 변경 사항 등을 검토할 수 있습니다.

1. [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home)에서 CodeCommit 콘솔을 엽니다.

1. **리포지토리** 페이지에서 한 커밋과 상위 커밋 간의 차이를 보려는 리포지토리를 선택합니다.

1. 탐색 창에서 **커밋**을 선택합니다.

1. 목록에 있는 모든 커밋의 약식 커밋 ID를 선택합니다. 뷰가 변경되어, 해당 커밋과 상위 커밋 간의 차이점을 포함하여 이 커밋에 대한 세부 정보가 표시됩니다.  
![\[이 커밋과 상위 커밋 간의 차이를 보려면 약식 커밋 ID를 선택합니다\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-commit-changes1.png)

   변경 내용은 나란히(**분할** 보기) 또는 일렬(**통합** 보기)로 표시할 수 있습니다. 공백 변경을 숨기거나 표시할 수도 있습니다. 주석을 추가할 수도 있습니다. 자세한 내용은 [커밋에 대한 주석 추가](how-to-commit-comment.md) 단원을 참조하십시오.
**참고**  
코드 및 다른 콘솔 설정 보기에 대한 기본 설정은 변경이 생길 때마다 브라우저 쿠키로 저장됩니다. 자세한 내용은 [사용자 기본 설정으로 작업](user-preferences.md) 단원을 참조하십시오.  
![\[통합 보기에 표시된 변경 사항 (공백 변경 사항 숨김)\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-commit-changes2c.png)  
![\[분할 보기에 표시된 변경 사항 (각 행에 주석 추가)\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-commenting-commenttab.png)
**참고**  
 행 마무리 스타일, 코드 편집기 및 기타 요인 등에 따라 한 행의 특정 변경 내용 대신 전체 행이 추가되거나 삭제될 수 있습니다. 세부 수준은 **git show** 또는 **git diff** 명령에서 반환되는 것과 일치합니다.

1. 한 커밋을 상위 커밋과 비교하려면 **커밋 시각화 도우미** 탭에서 약식 커밋 ID를 선택합니다. 한 커밋과 상위 커밋 간의 변경 사항을 비롯한 커밋 세부 정보가 표시됩니다.

## 임의의 두 커밋 지정자 비교
<a name="how-to-compare-commits-compare"></a>

CodeCommit 콘솔에서 두 커밋 지정자 간의 차이점을 확인할 수 있습니다. 커밋 지정자는 브랜치, 태그, 커밋 ID와 같은 참조 정보입니다.

1. [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home)에서 CodeCommit 콘솔을 엽니다.

1. **리포지토리** 페이지에서, 커밋, 브랜치 또는 태그 지정된 커밋을 비교하려는 리포지토리를 선택합니다.

1. 탐색 창에서 **커밋**을 선택한 다음 **커밋 비교**를 선택합니다.  
![\[임의의 두 커밋 지정자 비교\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-compare-1.png)

1. 상자를 사용하여 두 커밋 지정자를 비교할 수 있습니다.
   + 브랜치의 팁을 비교하려면 목록에서 브랜치 이름을 선택합니다. 그러면 해당 브랜치에서 비교를 위해 가장 최근 커밋을 선택합니다.
   + 커밋을 관련 특정 태그와 비교하려면 목록에서 태그 이름(있는 경우)을 선택합니다. 그러면 비교를 위해 태그가 지정된 커밋이 선택됩니다.
   + 특정 커밋을 비교하려면 상자에 커밋 ID를 입력하거나 붙여넣습니다. 전체 커밋 ID를 가져오려면, 탐색 표시줄에서 **커밋**을 선택하고 목록에서 커밋 ID를 복사합니다. **커밋 비교** 페이지에서 텍스트 상자에 전체 커밋 ID를 붙여넣고 **커밋 ID 사용**을 선택합니다.  
![\[브랜치, 태그 또는 커밋 ID 비교\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-compare-2.png)

1. 지정자를 선택한 후 **비교**를 선택합니다.  
![\[두 브랜치 간의 비교 보기\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-compare-branches.png)

   차이점은 나란히(**분할** 보기) 또는 일렬(**통합** 보기)로 표시할 수 있습니다. 공백 변경을 숨기거나 표시할 수도 있습니다.

1. 비교 선택 항목을 지우려면 **취소**를 선택합니다.

# 의 커밋에 대한 설명 AWS CodeCommit
<a name="how-to-commit-comment"></a>

CodeCommit 콘솔을 사용하여 리포지토리의 커밋에 대한 설명을 추가하고, 커밋에 대한 다른 사용자의 설명을 보거나 댓글을 작성할 수 있습니다. 이렇게 하면 다음 사항을 포함한 리포지토리 변경 내용에 대해 논의할 수 있습니다.
+ 변경을 수행한 이유
+ 추가 변경이 필요한지 여부
+ 변경 사항을 다른 브랜치에 병합해야 할지 여부

전체 커밋, 커밋 내 파일 또는 특정 행에 대한 설명을 추가하거나 파일 내에서 변경할 수 있습니다. 코드 행 하나를 선택한 다음 그에 따른 URL을 복사하여 해당 코드 행에 링크를 걸 수 있습니다.

**참고**  
최상의 결과를 위해, IAM 사용자로 로그인할 때 주석 달기 기능을 사용합니다. 주석 달기 기능은 루트 계정 자격 증명, 연동 액세스 권한 또는 임시 자격 증명으로 로그인하는 사용자에 맞게 최적화되지 않았습니다.

**Topics**
+ [리포지토리의 커밋에 대한 주석 보기](#how-to-commit-comment-view-console)
+ [리포지토리의 커밋에 대한 주석 추가 및 댓글 달기](#how-to-commit-comment-add-console)
+ [설명 보기, 추가, 업데이트, 답변 (AWS CLI)](#how-to-commit-comment-cli)

## 리포지토리의 커밋에 대한 주석 보기
<a name="how-to-commit-comment-view-console"></a>

CodeCommit 콘솔을 사용하여 커밋에 대한 주석을 볼 수 있습니다.

**커밋에 대한 설명 보기**

1. [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home)에서 CodeCommit 콘솔을 엽니다.

1. **리포지토리**에서, 커밋에 대한 주석을 보고자 하는 리포지토리를 선택합니다.

1. 탐색 창에서 **커밋**을 선택합니다. 주석을 살펴볼 커밋의 커밋 ID를 선택합니다.

   해당 커밋의 페이지와 주석이 표시됩니다.

## 리포지토리의 커밋에 대한 주석 추가 및 댓글 달기
<a name="how-to-commit-comment-add-console"></a>

CodeCommit 콘솔을 사용하여 한 커밋과 상위 커밋의 비교 또는 지정한 두 커밋 간의 비교에 주석을 추가할 수 있습니다. 한 주석에 이모티콘이나 자신의 주석 또는 둘 다 사용하여 댓글을 달 수 있습니다.

### 커밋에 대한 주석 추가 및 댓글 달기 (콘솔)
<a name="how-to-commit-comment-add-cpage"></a>

텍스트나 이모티콘으로 커밋에 주석을 추가하거나 주석에 댓글을 달 수 있습니다. 주석과 이모티콘은 콘솔에 로그인하는 데 사용한 역할이나 IAM 사용자의 것으로 표시됩니다.

**커밋에 주석을 추가하고 주석에 댓글을 달려면**

1. [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home)에서 CodeCommit 콘솔을 엽니다.

1. **리포지토리**에서, 커밋에 대한 주석을 작성하려는 리포지토리를 선택합니다.

1. 탐색 창에서 **커밋**을 선택합니다. 주석을 추가하거나 주석에 댓글을 달 커밋의 커밋 ID를 선택합니다.

   해당 커밋의 페이지와 주석이 표시됩니다.

1. 주석을 추가하려면 다음 중 하나를 수행합니다.
   + 일반 설명을 추가하려면 **변경 사항에 대한 주석**에 주석을 입력한 다음 **저장**을 선택합니다. [마크다운](https://en.wikipedia.org/wiki/Markdown)을 사용하거나, 일반 텍스트로 주석을 입력할 수 있습니다.  
![\[커밋의 변경 사항에 대한 일반적인 주석.\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-commenting-changecomment.png)
   + 커밋의 파일에 주석을 추가하려면 해당 파일의 이름을 찾습니다. **파일에 대한 주석**을 선택하여 주석을 입력한 다음 **저장**을 선택합니다.  
![\[커밋의 파일에 대한 주석 추가.\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-commenting-addfilecomment.png)
   + 커밋의 변경된 행에 주석을 추가하려면 변경 내용이 표시된 행으로 이동합니다. 주석 말풍선 ![\[The comment bubble icon that that indicates that you can leave a comment on that line of code.\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-commentbubble.png)를 선택하여 주석을 입력한 다음 **저장**을 선택합니다.  
![\[커밋의 행에 대한 주석 추가.\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-commenting-addlinecomment.png)
**참고**  
주석을 저장한 후 수정할 수 있습니다. 주석의 내용을 삭제할 수도 있습니다. 이 경우 내용이 삭제되었다는 메시지가 뜨며 주석은 유지됩니다. 주석을 저장하기 전에 **마크다운 미리 보기** 모드를 사용하여 주석을 확인하는 것이 좋습니다.

1. 커밋에 대한 설명에 답변하려면 **회신**을 선택합니다. 이모티콘으로 주석에 댓글을 달려면 목록에서 원하는 이모티콘을 선택합니다. 주석 하나당 이모티콘은 하나만 선택할 수 있습니다. 이모티콘 반응을 변경하려면 목록에서 다른 이모티콘을 선택하거나, 반응을 제거하기 위해 **없음**을 선택합니다.  
![\[주석에 댓글 및 이모티콘 반응 추가.\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-commenting-commenttab.png)

### 두 커밋 지정자 비교 시 주석 추가 및 주석에 댓글 달기
<a name="how-to-commit-comment-console-compare"></a>

브랜치, 태그 또는 커밋 간 비교에 대한 주석을 추가할 수 있습니다.

**커밋 지정자 비교 시 주석을 추가하거나 주석에 대한 댓글을 남기려면**

1. [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home)에서 CodeCommit 콘솔을 엽니다.

1. **리포지토리**에서, 커밋, 브랜치 또는 태그 지정된 커밋을 비교하려는 리포지토리를 선택합니다.

1. 탐색 창에서 **커밋**을 선택한 다음 **커밋 비교** 탭을 선택합니다.  
![\[임의의 두 커밋 지정자 비교\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-compare-1.png)

1. **대상 주소** 및 **소스** 필드를 사용하여 두 커밋 지정자를 비교합니다. 드롭다운 목록을 사용하거나 커밋 ID를 붙여 넣습니다. **비교**를 선택합니다.  
![\[커밋 ID를 브랜치와 비교할 때의 샘플 결과\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-compare-4.png)

1. 다음 중 한 개 이상을 수행할 수 있습니다.
   + 파일이나 행에 주석을 추가하려면 주석 말풍선을 선택합니다 ![\[The comment bubble icon that that indicates that you can leave a comment on that line of code.\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-commentbubble.png).
   + 비교한 변경 사항에 대한 일반적인 주석을 추가하려면 **변경 사항에 대한 주석**으로 이동합니다.

## 설명 보기, 추가, 업데이트, 답변 (AWS CLI)
<a name="how-to-commit-comment-cli"></a>

다음 명령을 실행하여 주석을 보고, 추가하고, 답변을 달고, 주석 내용을 삭제할 수 있습니다.
+ 두 커밋 간 비교에 대한 주석을 보려면 **[get-comments-for-compared-commit](#how-to-commit-comment-cli-get-comments)**를 실행합니다.
+ 주석에 대한 세부 정보를 보려면 [**get-comment**](#how-to-commit-comment-cli-get-comment-info)를 실행합니다.
+ 작성한 주석의 내용을 삭제하려면 [**delete-comment-content**](#how-to-commit-comment-cli-commit-delete)를 실행합니다.
+ 두 커밋 간 비교에 대한 주석을 작성하려면 [**post-comment-for-compared-commit**](#how-to-commit-comment-cli-comment)을 실행합니다.
+ 주석을 업데이트하려면 [**update-comment**](#how-to-commit-comment-cli-commit-update)를 실행합니다.
+ 주석에 댓글을 달려면 [**post-comment-reply**](#how-to-commit-comment-cli-commit-reply)를 실행합니다.
+ 주석에 이모티콘으로 반응하려면 [**put-comment-reaction**](#how-to-commit-comment-cli-commit-reply-emoji)을 실행합니다.
+ 주석에 대한 이모티콘 반응을 보려면 [**get-comment-reactions**](#how-to-commit-comment-cli-commit-emoji-view)을 실행합니다.

### 커밋에 대한 설명 보기
<a name="how-to-commit-comment-cli-get-comments"></a>

1. 다음을 지정하여 **get-comments-for-compared-commit** 명령을 실행합니다.
   + CodeCommit 리포지토리의 이름(`--repository-name` 옵션 사용)
   + 비교 방향을 설정하기 위한 after 커밋의 전체 커밋 ID(`--after-commit-id option` 사용).
   + 비교 방향을 설정하기 위한 before 커밋의 전체 커밋 ID(`--before-commit-id` 옵션 사용).
   + (선택 사항) 다음 결과 세트를 반환하는 열거형 토큰(`--next-token` 옵션 사용).
   + (선택 사항) 반환된 결과의 수를 제한하는 음수가 아닌 정수(`--max-results` 옵션 사용).

   예를 들어 *MyDemoRepo*라는 리포지토리의 두 커밋 간의 비교에 대해 작성된 설명을 보려면 다음을 수행합니다.

   ```
   aws codecommit get-comments-for-compared-commit --repository-name MyDemoRepo --before-commit-id 6e147360EXAMPLE --after-commit-id 317f8570EXAMPLE
   ```

1. 이 명령이 제대로 실행되면 다음과 비슷하게 출력됩니다.

   ```
   {
      "commentsForComparedCommitData": [ 
         { 
            "afterBlobId": "1f330709EXAMPLE",
            "afterCommitId": "317f8570EXAMPLE",
            "beforeBlobId": "80906a4cEXAMPLE",
            "beforeCommitId": "6e147360EXAMPLE",
            "comments": [ 
               { 
                  "authorArn": "arn:aws:iam::111111111111:user/Li_Juan",
                  "clientRequestToken": "123Example",
                  "commentId": "ff30b348EXAMPLEb9aa670f",
                  "content": "Whoops - I meant to add this comment to the line, not the file, but I don't see how to delete it.",
                  "creationDate": 1508369768.142,
                  "deleted": false,
                  "CommentId": "123abc-EXAMPLE",
                  "lastModifiedDate": 1508369842.278,
                  "callerReactions": [],
                  "reactionCounts": 
                   {
                     "SMILE" : 6,
                     "THUMBSUP" : 1
                   }
               },
               {
                  "authorArn": "arn:aws:iam::111111111111:user/Li_Juan",
                  "clientRequestToken": "123Example",
                  "commentId": "553b509bEXAMPLE56198325",
                  "content": "Can you add a test case for this?",
                  "creationDate": 1508369612.240,
                  "deleted": false,
                  "commentId": "456def-EXAMPLE",
                  "lastModifiedDate": 1508369612.240,
                  "callerReactions": [],
                  "reactionCounts": 
                   {
                     "THUMBSUP" : 2
                   }
                }
            ],
            "location": { 
               "filePath": "cl_sample.js",
               "filePosition": 1232,
               "relativeFileVersion": "after"
            },
            "repositoryName": "MyDemoRepo"
         }
      ],
      "nextToken": "exampleToken"
   }
   ```

### 커밋의 주석에 대한 세부 정보를 보려면
<a name="how-to-commit-comment-cli-get-comment-info"></a>

1. 시스템에서 생성한 설명 ID를 지정하여 **get-comment** 명령을 실행합니다. 예제:

   ```
   aws codecommit get-comment --comment-id ff30b348EXAMPLEb9aa670f
   ```

1. 이 명령이 제대로 실행되면 다음과 비슷한 출력이 반환됩니다.

   ```
   {
      "comment": { 
         "authorArn": "arn:aws:iam::111111111111:user/Li_Juan",
         "clientRequestToken": "123Example",
         "commentId": "ff30b348EXAMPLEb9aa670f",
         "content": "Whoops - I meant to add this comment to the line, but I don't see how to delete it.",
         "creationDate": 1508369768.142,
         "deleted": false,
         "commentId": "",
         "lastModifiedDate": 1508369842.278,
         "callerReactions": [],
         "reactionCounts": 
            {
              "SMILE" : 6,
              "THUMBSUP" : 1
            }
      }
   }
   ```

### 커밋의 주석 내용을 삭제하려면
<a name="how-to-commit-comment-cli-commit-delete"></a>

1. 시스템에서 생성한 설명 ID를 지정하여 **delete-comment-content** 명령을 실행합니다. 예제:

   ```
   aws codecommit delete-comment-content --comment-id ff30b348EXAMPLEb9aa670f
   ```
**참고**  
AWSCodeCommitFullAccess 정책이 적용되었거나 `DeleteCommentContent` 권한이 **허용**으로 설정된 경우에만 주석의 내용을 삭제할 수 있습니다.

1. 이 명령이 제대로 실행되면 다음과 비슷하게 출력됩니다.

   ```
   {
      "comment": { 
         "creationDate": 1508369768.142,  
         "deleted": true,
         "lastModifiedDate": 1508369842.278,
         "clientRequestToken": "123Example",
         "commentId": "ff30b348EXAMPLEb9aa670f",
         "authorArn": "arn:aws:iam::111111111111:user/Li_Juan",
         "callerReactions": [],
         "reactionCounts": 
            {
              "CLAP" : 1
            }
      }
   }
   ```

### 커밋에 설명 작성
<a name="how-to-commit-comment-cli-comment"></a>

1. 다음을 지정하여 **post-comment-for-compared-commit** 명령을 실행합니다.
   + CodeCommit 리포지토리의 이름(`--repository-name` 옵션 사용)
   + 비교 방향을 설정하기 위한 after 커밋의 전체 커밋 ID(`--after-commit-id `옵션 사용).
   + 비교 방향을 설정하기 위한 before 커밋의 전체 커밋 ID(`--before-commit-id` 옵션 사용).
   + 클라이언트에서 생성된 고유한 멱등성 토큰(**--client-request-token** 옵션 사용).
   + 설명의 내용(**--content** 옵션 사용).
   + 다음을 비롯하여 주석을 추가할 위치에 대한 위치 정보 목록.
     + 확장자와 하위 디렉터리를 비롯하여 비교하려는 파일의 이름(**filePath** 속성 사용).
     + 비교한 파일 내 변경의 행 번호(**filePosition** 속성 사용).
     + 변경에 대한 주석이 소스와 대상 브랜치 간의 비교 전인지 후인지 여부(**relativeFileVersion** 속성 사용).

   예를 들어, *"Can you add a test case for this?"*라는 주석을 *MyDemoRepo*라는 리포지토리의 두 커밋을 비교하여 *cl\$1sample.js* 파일을 변경한 것에 대해 추가하려면, 다음과 같이 합니다.

   ```
   aws codecommit post-comment-for-compared-commit --repository-name MyDemoRepo --before-commit-id 317f8570EXAMPLE --after-commit-id 5d036259EXAMPLE --client-request-token 123Example --content "Can you add a test case for this?" --location filePath=cl_sample.js,filePosition=1232,relativeFileVersion=AFTER   
   ```

1. 이 명령이 제대로 실행되면 다음과 비슷하게 출력됩니다.

   ```
   { 
            "afterBlobId": "1f330709EXAMPLE",
            "afterCommitId": "317f8570EXAMPLE",
            "beforeBlobId": "80906a4cEXAMPLE",
            "beforeCommitId": "6e147360EXAMPLE",
            "comment": {
                  "authorArn": "arn:aws:iam::111111111111:user/Li_Juan",
                  "clientRequestToken": "",
                  "commentId": "553b509bEXAMPLE56198325",
                  "content": "Can you add a test case for this?",
                  "creationDate": 1508369612.203,
                  "deleted": false,
                  "commentId": "abc123-EXAMPLE",
                  "lastModifiedDate": 1508369612.203,
                  "callerReactions": [],
                  "reactionCounts": []
                },
                "location": { 
                  "filePath": "cl_sample.js",
                  "filePosition": 1232,
                  "relativeFileVersion": "AFTER"
                },
            "repositoryName": "MyDemoRepo"
    }
   ```

### 커밋에 대한 설명 업데이트
<a name="how-to-commit-comment-cli-commit-update"></a>

1. 시스템에서 생성한 주석 ID와 기존 내용을 교체하려는 내용을 지정하여 **update-comment** 명령을 실행합니다.

   예를 들어, *"Fixed as requested. I'll update the pull request."*라는 내용을 ID가 *442b498bEXAMPLE5756813*인 주석으로 추가하려면, 다음과 같이 합니다.

   ```
   aws codecommit update-comment --comment-id 442b498bEXAMPLE5756813 --content "Fixed as requested. I'll update the pull request."  
   ```

1. 이 명령이 제대로 실행되면 다음과 비슷하게 출력됩니다.

   ```
   { 
       "comment": {
           "authorArn": "arn:aws:iam::111111111111:user/Li_Juan",
           "clientRequestToken": "",
           "commentId": "442b498bEXAMPLE5756813",
           "content": "Fixed as requested. I'll update the pull request.",
           "creationDate": 1508369929.783,
           "deleted": false,
           "lastModifiedDate": 1508369929.287,
           "callerReactions": [],
           "reactionCounts": 
             {
               "THUMBSUP" : 2
             }
       }
    }
   ```

### 커밋에 대한 주석에 댓글을 달려면
<a name="how-to-commit-comment-cli-commit-reply"></a>

1. 풀 요청의 주석에 댓글을 게시하려면 다음을 지정하여 **post-comment-reply** 명령을 실행합니다.
   + 댓글을 달 주석의 시스템 생성 ID(**--in-reply-to** 옵션 사용).
   + 클라이언트에서 생성된 고유한 멱등성 토큰(**--client-request-token** 옵션 사용).
   + 댓글의 내용(**--content** 옵션 사용).

    예를 들어 *"Good catch. I'll remove them."*라는 댓글을 시스템 생성 ID가 *abcd1234EXAMPLEb5678efgh*인 주석에 달려면 다음과 같이 합니다.

   ```
   aws codecommit post-comment-reply --in-reply-to abcd1234EXAMPLEb5678efgh --content "Good catch. I'll remove them." --client-request-token 123Example
   ```

1. 이 명령이 제대로 실행되면 다음과 비슷하게 출력됩니다.

   ```
   { 
       "comment": {
           "authorArn": "arn:aws:iam::111111111111:user/Li_Juan",
           "clientRequestToken": "123Example",
           "commentId": "442b498bEXAMPLE5756813",
           "content": "Good catch. I'll remove them.",
           "creationDate": 1508369829.136,
           "deleted": false,
           "CommentId": "abcd1234EXAMPLEb5678efgh",
           "lastModifiedDate": 150836912.221,
           "callerReactions": [],
           "reactionCounts": []
       }
    }
   ```

### 커밋에 대한 주석에 이모티콘으로 댓글을 달려면
<a name="how-to-commit-comment-cli-commit-reply-emoji"></a>

1. 풀 요청의 주석에 이모티콘으로 댓글을 달거나 이모티콘 반응의 값을 변경하려면 다음과 같이 지정하여 **put-comment-reaction** 명령을 실행합니다.
   + 이모티콘으로 댓글을 달 주석의 시스템 생성 ID.
   + 추가 또는 업데이트하려는 반응의 값. 허용되는 값에는 지원되는 이모티콘, 단축 코드, 유니코드 값 등이 있습니다.<a name="emoji-reaction-table"></a>

   CodeCommit에서 이모티콘에 지원되는 값은 다음과 같습니다.  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/how-to-commit-comment.html)

    예를 들어, 시스템 생성 ID가 *abcd1234EXAMPLEb5678efgh*인 주석에 이모티콘 *:thumbsup:*을 추가하려면 다음과 같이 합니다.

   ```
   aws codecommit put-comment-reaction --comment-id abcd1234EXAMPLEb5678efgh --reaction-value :thumbsup: 
   ```

1. 성공하면 이 명령은 출력을 생성하지 않습니다.

### 주석에 대한 이모티콘 반응을 보려면
<a name="how-to-commit-comment-cli-commit-emoji-view"></a>

1. 이모티콘으로 반응한 사용자를 포함하여 주석에 대한 이모티콘 반응을 보려면 주석의 시스템 생성 ID를 지정하여 **get-comment-reactions** 명령을 실행합니다.

    예를 들어, 시스템 생성 ID가 *abcd1234EXAMPLEb5678efgh*인 주석에 대한 이모티콘 반응을 보려면 다음과 같이 합니다.

   ```
   aws codecommit get-comment-reactions --comment-id abcd1234EXAMPLEb5678efgh 
   ```

1. 이 명령이 제대로 실행되면 다음과 비슷하게 출력됩니다.

   ```
   {
       "reactionsForComment": {
           [
              {
                   "reaction": {
                       "emoji:"👍",
                       "shortCode": "thumbsup",
                       "unicode": "U+1F44D"
                   },
                   "users": [
                       "arn:aws:iam::123456789012:user/Li_Juan",
                       "arn:aws:iam::123456789012:user/Mary_Major",
                       "arn:aws:iam::123456789012:user/Jorge_Souza"
                   ]
               },
               {
                   "reaction": {
                       "emoji": "👎",
                       "shortCode": "thumbsdown",
                       "unicode": "U+1F44E"
                   },
                   "users": [
                       "arn:aws:iam::123456789012:user/Nikhil_Jayashankar"
                   ]
               },
               {
                   "reaction": {
                       "emoji": "😕",
                       "shortCode": "confused",
                       "unicode": "U+1F615"
                   },
                   "users": [
                       "arn:aws:iam::123456789012:user/Saanvi_Sarkar"
                   ]
               }
           ]
       }
   }
   ```

# 에서 Git 태그 생성 AWS CodeCommit
<a name="how-to-create-tag"></a>

Git 태그를 사용하여 다른 리포지토리 사용자가 중요성을 파악할 수 있도록 커밋에 레이블을 표시할 수 있습니다. CodeCommit 리포지토리에서 Git 태그를 만들려면, CodeCommit 리포지토리에 연결된 로컬 리포지토리에서 Git을 사용할 수 있습니다. 로컬 리포지토리에 Git 태그를 생성한 후에 **git push --tags**를 사용하여 CodeCommit 리포지토리로 푸시할 수 있습니다.

자세한 내용은 [태그 세부 정보 보기](how-to-view-tag-details.md) 단원을 참조하십시오.

## Git을 사용한 태그 생성
<a name="how-to-create-tag-git"></a>

이 단계들을 따라 로컬 리포지토리에서 Git을 사용하여 CodeCommit 리포지토리에 Git 태그를 생성합니다.

이 단계들에서는 로컬 리포지토리를 이미 CodeCommit 리포지토리에 연결했다고 가정했습니다. 지침은 [리포지토리에 연결](how-to-connect.md) 섹션을 참조하세요.

1. **git tag *new-tag-name* *commit-id*** 명령을 실행합니다. 여기서 *new-tag-name*은 새 Git 태그의 이름이고 *commit-id*는 Git 태그에 연결할 커밋의 ID입니다.

   예를 들어, 다음 명령을 실행하면 `beta`라는 Git 태그가 생성되고 이 태그는 커밋 ID `dc082f9a...af873b88`과 연결됩니다.

   ```
   git tag beta dc082f9a...af873b88
   ```

1. 새 Git 태그를 로컬 리포지토리에서 CodeCommit 리포지토리로 푸시하려면 **git push *remote-name* *new-tag-name*** 명령을 실행합니다. 여기서 *remote-name*은 CodeCommit 리포지토리의 이름이고 *new-tag-name*은 새 Git 태그의 이름입니다.

   예를 들어, `origin`이라는 CodeCommit 리포지토리에 `beta`라는 새 Git 태그를 푸시하려면 다음을 실행합니다.

   ```
   git push origin beta
   ```

**참고**  
모든 새 Git 태그를 로컬 리포지토리에서 CodeCommit 리포지토리로 푸시하려면 **git push --tags**를 실행합니다.  
로컬 리포지토리가 CodeCommit 리포지토리에 있는 모든 Git 태그로 업데이트되도록 하려면 **git fetch**를 실행한 다음 **git fetch --tags**를 실행합니다.

다른 옵션들에 대해서는 Git 설명서를 참조하세요.

# 에서 Git 태그 세부 정보 보기 AWS CodeCommit
<a name="how-to-view-tag-details"></a>

Git에서 태그는 커밋과 같은 참조에 적용할 수 있는 레이블로, 다른 리포지토리 사용자에게 중요할 수 있는 정보를 표시합니다. 예를 들어 **beta** 태그를 사용하여 프로젝트의 베타 릴리스 포인트인 커밋에 태그를 지정할 수 있습니다. 자세한 내용은 [Git을 사용한 태그 생성](how-to-create-tag.md#how-to-create-tag-git) 단원을 참조하십시오. Git 태그는 리포지토리 태그와 다릅니다. 리포지토리 태그를 사용하는 방법에 대한 자세한 내용은 [리포지토리에 태그 추가](how-to-tag-repository-add.md) 단원을 참조하세요.

 AWS CodeCommit 콘솔을 사용하여 각 Git 태그에서 참조하는 커밋의 날짜 및 커밋 메시지를 포함하여 리포지토리의 Git 태그에 대한 정보를 볼 수 있습니다. 콘솔에서 태그에서 참조되는 커밋과 리포지토리의 기본 브랜치 헤드를 비교할 수 있습니다. 다른 커밋과 마찬가지로 해당 Git 태그 지점에서도 코드를 볼 수 있습니다.

또한 터미널이나 명령줄에서 Git을 사용하여 로컬 리포지토리의 Git 태그에 대한 세부 정보를 볼 수 있습니다.

**Topics**
+ [태그 세부 정보 보기 (콘솔)](#how-to-view-tag-details-console)
+ [Git 태그 세부 정보 보기 (Git)](#how-to-view-tag-details-git)

## 태그 세부 정보 보기 (콘솔)
<a name="how-to-view-tag-details-console"></a>

 AWS CodeCommit 콘솔을 사용하여 리포지토리의 Git 태그 목록과 Git 태그에서 참조하는 커밋에 대한 세부 정보를 빠르게 볼 수 있습니다.

1. [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home)에서 CodeCommit 콘솔을 엽니다.

1. **리포지토리**에서, 태그를 보려는 리포지토리의 이름을 선택합니다.

1. 탐색 창에서 **Git 태그**를 선택합니다.  
![\[리포지토리의 태그 보기.\]](http://docs.aws.amazon.com/ko_kr/codecommit/latest/userguide/images/codecommit-tags-view.png)

1. 다음 중 하나를 수행하세요.
   + 해당 커밋에 있을 당시의 코드를 보려면 Git 태그 이름을 선택합니다.
   + 전체 커밋 메시지, 커미터 및 작성자 등 커밋에 대한 세부 정보를 보려면 약식 커밋 ID를 선택합니다.

## Git 태그 세부 정보 보기 (Git)
<a name="how-to-view-tag-details-git"></a>

Git을 사용하여 로컬 리포지토리에서 Git 태그에 대한 세부 정보를 보려면 다음 명령 중 하나를 실행합니다.
+ [git tag](#how-to-view-tag-details-git-tag) - Git 태그 이름의 목록을 봅니다.
+ [git show](#how-to-view-tag-details-git-show) - 특정 Git 태그에 대한 정보를 봅니다.
+ [git ls-remote](#how-to-view-tag-details-git-remote) - CodeCommit 리포지토리의 Git 태그에 대한 정보를 봅니다.

**참고**  
로컬 리포지토리가 CodeCommit 리포지토리에 있는 모든 Git 태그로 업데이트되도록 하려면 **git fetch**를 실행한 다음 **git fetch --tags**를 실행합니다.

다음 단계들에서는 로컬 리포지토리를 이미 CodeCommit 리포지토리에 연결했다고 가정했습니다. 지침은 [리포지토리에 연결](how-to-connect.md) 섹션을 참조하세요.

### 로컬 리포지토리의 Git 태그 목록을 보려면 다음을 수행합니다.
<a name="how-to-view-tag-details-git-tag"></a>

1. **git tag** 명령을 실행합니다.

   ```
   git tag
   ```

1. 이 명령이 제대로 실행되면 다음과 비슷하게 출력됩니다.

   ```
   beta
   release
   ```
**참고**  
정의된 태그가 없는 경우 **git tag**가 아무 것도 반환하지 않습니다.

다른 옵션들에 대해서는 Git 설명서를 참조하세요.

### 로컬 리포지토리의 Git 태그에 대한 정보를 보려면 다음을 수행합니다.
<a name="how-to-view-tag-details-git-show"></a>

1. **git show *tag-name*** 명령을 실행합니다. 예를 들어, Git 태그 `beta`에 대한 정보를 보려면 다음을 실행합니다.

   ```
   git show beta
   ```

1. 이 명령이 제대로 실행되면 다음과 비슷하게 출력됩니다.

   ```
   commit 317f8570...ad9e3c09
   Author: John Doe <johndoe@example.com>
   Date:   Tue Sep 23 13:49:51 2014 -0700
   
       Added horse.txt
   
   diff --git a/horse.txt b/horse.txt
   new file mode 100644
   index 0000000..df42ff1
   --- /dev/null
   +++ b/horse.txt
   @@ -0,0 +1 @@
   +The horse (Equus ferus caballus) is one of two extant subspecies of Equus ferus
   \ No newline at end of file
   ```
**참고**  
Git 태그 정보 출력을 종료하려면 **:q**를 입력합니다.

다른 옵션들에 대해서는 Git 설명서를 참조하세요.

### CodeCommit 리포지토리의 Git 태그에 대한 정보를 보려면
<a name="how-to-view-tag-details-git-remote"></a>

1. **git ls-remote --tags** 명령을 실행합니다.

   ```
   git ls-remote --tags
   ```

1. 제대로 실행된 경우 이 명령은 CodeCommit 리포지토리에 Git 태그 목록을 출력으로 생성합니다.

   ```
   129ce87a...70fbffba    refs/tags/beta
   785de9bd...59b402d8    refs/tags/release
   ```

   정의된 Git 태그가 없는 경우 **git ls-remote --tags**가 빈 줄을 반환합니다.

다른 옵션들에 대해서는 Git 설명서를 참조하세요.

# 에서 Git 태그 삭제 AWS CodeCommit
<a name="how-to-delete-tag"></a>

CodeCommit 리포지토리에서 Git 태그를 삭제하려면, CodeCommit 리포지토리에 연결된 로컬 리포지토리에서 Git을 사용합니다.

## Git을 사용하여 Git 태그 삭제
<a name="how-to-delete-tag-git"></a>

다음 단계에 따라 로컬 리포지토리에서 Git을 사용하여 CodeCommit 리포지토리의 Git 태그를 삭제합니다.

이러한 단계는 로컬 리포지토리를 이미 CodeCommit 리포지토리에 연결했다는 가정하에 작성되었습니다. 지침은 [리포지토리에 연결](how-to-connect.md) 섹션을 참조하세요.

1. 로컬 리포지토리에서 Git 태그를 삭제하려면 **git tag -d *tag-name*** 명령을 실행합니다. 여기서 *tag-name*은 삭제할 Git 태그의 이름입니다.
**작은 정보**  
Git 태그 이름 목록을 가져오려면 **git tag**를 실행하세요.

   예를 들어, `beta`라는 로컬 리포지토리에서 Git 태그를 삭제하려면 다음을 실행합니다.

   ```
   git tag -d beta
   ```

1. CodeCommit 리포지토리에서 Git 태그를 삭제하려면 **git push *remote-name* --delete *tag-name*** 명령을 실행합니다. 여기서 *remote-name*은 로컬 리포지토리가 CodeCommit 리포지토리에 사용하는 별명이고, *tag-name*은 CodeCommit 리포지토리에서 삭제할 Git 태그의 이름입니다.
**작은 정보**  
CodeCommit 리포지토리 이름의 목록과 그 URL을 가져오려면 **git remote -v** 명령을 실행합니다.

   예를 들어, `origin`이라는 CodeCommit 리포지토리에서 `beta`라는 Git 태그를 삭제하려면 다음을 실행합니다.

   ```
   git push origin --delete beta
   ```