기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS CodeCommit란 무엇인가요?
AWS CodeCommit을 클라우드에서 자산 (예: 문서, 소스 코드, 바이너리 파일) 을 비공개로 저장하고 관리하는 데 사용할 수 있도록 Amazon Web Services Services에서 호스트되는 버전 관리 서비스인 입니다. CodeCommit의 요금에 대한 자세한 내용은 요금
참고
CodeCommit는 많은 규정 준수 프로그램의 범위 내에 있습니다. AWS 및 규정 준수 활동에 대한 자세한 내용은 규정 준수 프로그램 제공 AWS 범위 내 서비스
이것은 HIPAA 적격 서비스입니다. AWS, 1996년 미국 HIPAA(Health Insurance Portability and Accountability Act) 및 AWS 서비스를 사용하여 보호되는 건강 정보(PHI)를 처리, 저장 및 전송하는 방법에 대한 자세한 내용은 HIPAA 개요
이 서비스와 보안 관리 모범 사례를 지정하는 보안 관리 표준인 ISO 27001에 대한 자세한 내용은 ISO 27001 개요를
이 서비스와 PCI DSS(Payment Card Industry Data Security Standard)에 대한 자세한 내용은 PCI DSS 개요
이 서비스에 대한 자세한 내용 및 기밀 정보를 보호하는 암호 모듈의 보안 요건을 규정하고 있는 Federal Information Processing Standard(FIPS) Publication 140-2 US 정부 표준에 대한 정보는 Federal Information Processing Standard(FIPS) 140-2 개요
주제
CodeCommit 소개
CodeCommit의 안전하고 확장성이 뛰어난 관리형 소스 관리 서비스인 입니다. CodeCommit자체 소스 제어 시스템을 관리하거나 인프라 확장에 대해 걱정할 필요가 없습니다. CodeCommit을 사용하여 코드와 바이너리 등을 저장할 수 있습니다. 또한 Git의 표준 기능을 지원하므로 기존 Git 기반 도구와도 원활하게 연동됩니다.
CodeCommit를 사용하여 다음을 수행할 수 있습니다.
-
에서 호스팅하는 완전 관리형 서비스의 혜택을 누리십시오AWS. CodeCommit높은 서비스 가용성과 내구성을 제공하며 자체 하드웨어 및 소프트웨어를 관리하는 데 따르는 관리 오버헤드를 제거합니다. 하드웨어를 프로비저닝 및 확장하고 서버 소프트웨어를 설치, 구성, 업데이트할 필요가 없습니다.
-
코드를 안전하게 저장하세요. CodeCommit저장소는 저장 중일 때뿐만 아니라 전송 중에도 암호화됩니다.
-
공동 작업을 통해 코드를 작성하세요. CodeCommit리포지토리는 사용자가 브랜치에 병합하기 전에 서로의 코드 변경 사항을 검토하고 댓글을 달 수 있는 풀 리퀘스트, 풀 리퀘스트 및 댓글에 대해 사용자에게 자동으로 이메일을 보내는 알림 등을 지원합니다.
-
버전 제어 프로젝트를 쉽게 확장할 수 있습니다. CodeCommit리포지토리는 개발 요구 사항에 맞게 확장할 수 있습니다. 서비스를 통해 대량 파일 또는 브랜치, 대용량 파일 크기 및 긴 개정 기록을 포함하는 리포지토리를 처리할 수 있습니다.
-
언제든지 무엇이든 보관할 수 있습니다. CodeCommit리포지토리의 크기에는 제한이 없습니다.
-
다른 서비스AWS 및 타사 서비스와 통합하세요. CodeCommit리포지토리를AWS 클라우드의 다른 프로덕션 리소스와 가깝게 유지하여 개발 라이프사이클의 속도와 빈도를 높이는 데 도움이 됩니다. IAM과 통합되며 다른AWS 서비스와 함께 사용하거나 다른 리포지토리와 병렬로 사용할 수 있습니다. 자세한 정보는 AWS CodeCommit과 제품 및 서비스 통합을 참조하세요.
-
다른 원격 리포지토리에서 파일을 쉽게 마이그레이션할 수 있습니다. Git 기반 리포지토리에서 CodeCommit을 마이그레이션할 수 있습니다.
-
이미 알고 있는 Git 도구를 사용하세요. CodeCommitGit 명령과 자체AWS CLI 명령 및 API를 지원합니다.
CodeCommit, Git 및 필요에 맞는AWS 서비스 선택
CodeCommit는 Git 기반 서비스로서 대부분의 버전 관리 필요에 적합합니다. 파일 크기, 파일 형식 및 리포지토리 크기에 대한 임의적인 제한은 없습니다. 그러나 특정 종류의 작업 수행, 특히 시간에 따른 작업 수행에 부정적인 영향을 미칠 수 있는 Git에 대해서는 내재된 제약이 있습니다. 다른 AWS 서비스가 해당 작업에 더 적합한 사용 사례에 CodeCommit 리포지토리 수행을 사용하지 않게 함으로써 리포지토리 수행의 잠재적인 악화를 방지할 수 있습니다. 또한 복잡한 리포지토리에 대한 Git 성능을 최적화할 수 있습니다. 일부 사용 사례에서는 Git, 즉 CodeCommit가 최상의 솔루션이 아닐 수 있으며 Git를 최적화하기 위해 추가적인 조치를 취해야 할 수 있습니다.
사용 사례 | 설명 | 고려해야 할 다른 서비스 |
---|---|---|
자주 변경되는 대용량 파일 | Git는 Delta 인코딩을 사용하여 파일 버전 사이의 차이를 저장합니다. 예를 들어 문서의 몇 단어만을 변경하는 경우, Git는 이러한 변경된 단어만을 저장합니다. 변경이 많이 가해진 5MB 이상의 파일 또는 객체가 있는 경우 Git가 Delta 차이의 상당한 체인을 다시 구성해야 할 수 있습니다. 이러한 파일이 시간의 경과에 따라 증가함에 따라 로컬 컴퓨터와 CodeCommit 모두의 컴퓨팅 리소스의 소비량이 갈수록 늘어날 수 있습니다. | 대용량 파일 버전 관리 Simple Storage Service (Amazon S3) 를 고려합니다. 자세한 내용은 Amazon Simple Storage Service 사용 설명서의 버전 관리 사용을 참조하십시오. |
데이터베이스 | Git 리포지토리의 크기는 시간이 흐를수록 증가합니다. 버전 관리 트랙은 모두 변경되므로 모든 변경 사항이 리포지토리 크기를 증가시킵니다. 다시 말해 데이터를 커밋할 때 커밋에서 데이터를 삭제하더라도 데이터는 리포지토리에 추가됩니다. 처리하고 시간의 경과에 따라 전송해야 할 더 많은 데이터가 있으므로 Git의 속도가 느려집니다. 이러한 현상은 특히 데이터베이스 사용 사례에 불리한 영향을 줍니다. Git는 데이터베이스로서 설계되지 않았습니다. | 크기에 관계없이 일관된 성능의 데이터베이스를 생성하고 사용하려면 Amazon DynamoDB를 고려해 보십시오. 자세한 내용은 Amazon DynamoDB 참조하십시오. |
감사 추적 | 일반적으로 감사 추적은 긴 시간 동안 유지되며 빈도가 매우 높은 케이던스로 시스템 프로세스에 의해 지속적으로 생성됩니다. Git는 개발 주기에서 개발자 그룹에 의해 생성된 소스 코드를 안전하게 저장하도록 설계되었습니다. 프로그래밍 방식으로 생성된 시스템 변경을 지속적으로 저장하는 리포지토리를 빠르게 변경하면 시간이 흐름에 따라 성능 저하를 초래하게 됩니다. | 감사 내역을 저장하려면 Amazon Simple Simple Storage Service (Amazon S3) 을 고려합니다. AWS활동을 감사하려면 사용 사례에 따라 AWS CloudTrailAWS Config |
백업 | Git는 개발자가 작성한 소스 코드 버전에 맞추어 설계되었습니다. 백업 전략으로 리포지토리를 포함한 두 개의 원격CodeCommit 리포지토리에 커밋을 푸시할 수 있습니다. 그러나 Git는 컴퓨터 파일 시스템, 데이터베이스 덤프 또는 유사한 백업 콘텐츠의 백업을 처리하도록 설계되지 않았습니다. 그렇게 하면 시스템의 속도를 둔화시키고 리포지토리를 복제하고 푸시하는 데 소요되는 시간이 증가할 수 있습니다. | AWS 클라우드로의 백업에 대한 자세한 내용은 백업 및 복원 |
다수의 브랜치 또는 참조 | Git 클라이언트가 리포지토리 데이터를 푸시하거나 가져올 때 단일 브랜치에만 관심이 있더라도, 원격 서버는 모든 브랜치와 태그 등의 참조를 전송해야 합니다. 수천 개의 브랜치와 참조가 있는 경우, 이를 처리하고 전송하는 데(팩 협상) 시간이 소요될 수 있으며 명백히 느린 리포지토리 응답을 초래할 수 있습니다. 브랜치와 태그가 많을수록 이러한 프로세스가 오래 걸릴 수 있습니다. CodeCommit를 사용하는 좋지만, 더 이상 필요하지 않은 브랜치와 태그는 삭제하시기 바랍니다. | 필요치 않은 브랜치와 태그를 확인하기 위해 CodeCommit 리포지토리의 참조 수를 분석하려면 다음 명령 중 하나를 사용할 수 있습니다.
|
CodeCommit 작동 방식
CodeCommitGit 기반 리포지토리 사용자에게는 익숙하지만 익숙하지 않은 사용자라도CodeCommit 비교적 간단하게 전환할 수 있습니다. CodeCommit리포지토리를 쉽게 생성하고 기존 리포지토리와 브랜치를 나열할 수 있는 콘솔을 제공합니다. 로컬 리포지토리를 생성하여 간단한 몇 단계로 리포지토리에 대한 정보를 찾아서 컴퓨터에 복제할 수 있습니다. 로컬 리포지토리에서 원하는 항목을 변경한 다음 변경 내용을 CodeCommit 리포지토리로 푸시할 수 있습니다. 로컬 컴퓨터의 명령줄에서 작업하거나 GUI 기반 편집기를 사용할 수 있습니다.
다음 그림에서는 개발 시스템, AWS CLI 또는 CodeCommit 콘솔, CodeCommit 서비스를 사용하여 리포지토리를 생성 및 관리하는 방법을 보여 줍니다.

-
AWS CLI또는CodeCommit 콘솔을 사용하여CodeCommit 리포지토리를 생성합니다.
-
개발 시스템에서 Git을 통해 git clone을 실행하여 CodeCommit 리포지토리의 이름을 지정합니다. 이렇게 하면 리포지토리에 연결되는 로컬CodeCommit 리포지토리가 생성됩니다.
-
개발 머신의 로컬 리포지토리를 사용하여 파일을 수정 (추가, 편집, 삭제) 한 다음git add 실행하여 수정된 파일을 로컬로 스테이징합니다. git commit를 실행하여 파일을 로컬로 커밋한 다음git push 실행하여 파일을CodeCommit 리포지토리로 보냅니다.
-
다른 사용자가 변경한 내용을 다운로드합니다. git pull를 실행하여CodeCommit 리포지토리의 파일을 로컬 리포지토리와 동기화합니다. 그러면 최신 버전의 파일을 사용하여 작업할 수 있습니다.
AWS CLI또는 CodeCommit 콘솔을 사용하여 리포지토리를 추적 및 관리할 수 있습니다.
Amazon S3 파일 버전 관리와 어떻게CodeCommit 다릅니까?
CodeCommit는 팀 소프트웨어 개발용으로 최적화되었습니다. 여러 파일의 변경 사항을 일괄 관리하며, 이는 다른 개발자의 변경 사항과 parallel 발생할 수 있습니다. Amazon S3 버전 관리는 이전 버전의 파일 복구를 지원하지만 소프트웨어 개발 팀에 필요한 협업 파일 추적 기능에는 초점을 맞추지 않습니다.
CodeCommit를 시작하는 방법
CodeCommit을 시작하려면
-
설정 의 단계에 따라 개발 시스템을 준비합니다.
-
시작하기의 자습서 하나 이상에 나오는 단계를 따르십시오.
-
에서 버전 제어 프로젝트를 CodeCommit만들거나 로 버전 제어 프로젝트를CodeCommit 마이그레이션합니다.
Git에 대한 자세한 내용은 어디에서 확인할 수 있나요?
아직도 잘 모르겠다면 Git 사용 방법 배우기를 참조하십시오. 다음과 같은 몇 가지 유용한 자료가 있습니다.
-
Pro Git
(Pro Git 서적의 온라인 버전). 작성자: Scott Chacon. 발행: Apress -
Git Immersion은
Git 사용의 기초를 안내하는try-it-yourself 가이드 투어입니다. 발행: Neo Innovation, Inc. -
Git Reference
(상세한 Git 자습서로도 사용 가능한 온라인 빠른 참조). GitHub팀에서 게시했습니다. -
Git Cheat Sheet
(기본 Git 명령 구문). GitHub팀에서 게시했습니다. -
Git Pocket Guide
. 작성자: Richard E. Silverman 발행: O'Reilly Media, Inc.