소스 제어 도구

Android 코드를 작업하려면 Git(오픈소스 버전 제어 시스템) 및 Repo(Git 외에 실행되는 저장소 관리 도구)가 필요합니다. 변경사항을 업로드하여 검토하는 등의 일반 작업에 대한 개요는 공통 소스 제어 작업을 참조하세요.

Git

Git는 여러 저장소에 분배되는 대규모 프로젝트를 처리하도록 설계되었습니다. Android는 로컬 분기화, 커밋, 차이점 및 수정사항과 같은 로컬 작업에 Git를 사용합니다. Android 프로젝트 설정 과정의 여러 도전 과제 중 하나는 애호가 커뮤니티에서 대중 시장 소비자 기기를 제조하는 대형 OEM에 이르는 외부 커뮤니티를 지원하기 위한 가장 효과적인 방법을 파악하는 것이었습니다. Google은 구성요소가 대체 가능했으면 했고 Android 외의 자체적인 처리 과정을 지닌 흥미로운 구성요소를 원했습니다. Google은 먼저 분산형 수정 제어 시스템을 선택한 다음 Git로 좁혔습니다.

Git에 대한 자세한 내용은 Git 문서를 참조하세요.

Repo

Repo는 필요한 경우 Git 저장소를 통합하고 Gerrit 수정 제어 시스템에 업로드를 수행하고 Android 개발 워크플로의 일부를 자동화합니다. Repo는 두 부분으로 제공되며, git-repo-downloads에서 다운로드하는 Repo Launcher가 첫 번째 부분입니다. 이는 결제를 초기화하고 두 번째 부분인 전체 Repo 도구를 다운로드하는 방법을 아는 Python 스크립트입니다. 전체 Repo 도구는 기본적으로 $SRCDIR/.repo/repo/...에 위치하며 다운로드한 Repo Launcher에서 전달된 명령어를 수신합니다.

Repo는 Git를 대체하기 위함이 아니며, 단지 Android의 컨텍스트에서 Git를 쉽게 작업할 수 있도록 하는 데에만 목적이 있습니다. repo 명령어는 경로 어디에나 삽입 가능한 실행 가능한 Python 스크립트입니다. Android 소스 파일로 작업할 때에는 네트워크 작업 전체에 걸쳐 Repo를 사용하게 되며, 단일 Repo 작업 디렉터리를 예로 들 수 있습니다.

대부분의 경우 Repo 대신 Git를 사용하거나 Repo 및 Git 명령어를 결합하여 복합 명령어를 형성할 수 있습니다. 하지만 네트워크 전체에 걸친 기본 작업에 Repo를 사용하면 작업이 훨씬 간단해집니다. Repo에 대한 자세한 내용은 Repo 명령어 참조Repo README를 참조하세요.

기타 도구

Gerrit는 Git를 사용하는 프로젝트를 위한 웹 기반 코드 검토 시스템입니다. Gerrit는 모든 승인된 사용자가 변경사항을 제출할 수 있도록 허용하여 좀 더 중앙화된 방식의 Git 사용을 장려합니다. 이러한 변경사항은 코드 검토를 전달할 경우 자동으로 병합됩니다. 또한 Gerrit는 브라우저에서 변경사항을 나란히 표시하여 검토를 수월하게 하고 인라인 코멘트를 지원합니다.

Android Studio는 Android 애플리케이션 개발을 위한 공식 통합 개발 환경(IDE)입니다.