소스 제어 도구

Android 코드로 작업하려면 Git (오픈소스 버전 제어 시스템)와 Repo (Google에서 만든 저장소 관리 도구로 Git 위에서 실행됨)가 모두 필요합니다. 검토하기 위해 변경사항을 업로드하는 등 진행할 수 있는 일반 작업에 관한 요약은 소스 제어 워크플로를 참고하세요.

Git

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

Git에 관한 자세한 내용은 이 Git 문서를 참고하세요.

Repo

Repo 는 필요한 경우 Git 저장소를 통합하고 Gerrit 버전 제어 시스템에 업로드하고 Android 개발 워크플로의 일부를 자동화합니다.

Repo 런처는 체크아웃을 초기화하고 Repo의 두 번째 부분인 전체 Repo 도구를 다운로드하는 Python 스크립트를 제공합니다. 전체 Repo 도구는 Android 소스 코드 체크아웃에 포함되어 있습니다. 이 도구는 기본적으로 $SRCDIR/.repo/repo/...에 있으며 다운로드한 Repo 런처에서 전달된 명령어를 수신합니다.

Repo는 Git를 대체하지 않으며, 단지 Android의 컨텍스트에서 Git로 쉽게 작업할 수 있도록 해 줍니다. Repo는 매니페스트 파일 을 이용하여 Android 슈퍼 프로젝트에 Git 프로젝트를 집계합니다. Python 실행 스크립트인 repo 명령어는 경로 어디에나 삽입할 수 있습니다. Android 소스 파일로 작업할 때 단일 Repo 작업 디렉터리 같은 네트워크 간 작업에 Repo를 사용할 수 있습니다.

대부분의 경우 Repo 대신 Git를 사용하거나 Repo 및 Git 명령어를 결합하여 복합 명령어를 형성할 수 있습니다. 하지만 네트워크 전체에 걸친 기본 작업에 Repo를 사용하면 작업이 훨씬 간단해집니다. Repo에 관한 자세한 내용은 Repo 명령어 참조, Repo README, Repo에서 사용 설정할 수 있는 Preupload Hooks(테스트), AOSP의 일반 문서를 참고하세요.

git-repo-downloads에서 Repo 런처를 다운로드하여 설치하려면 Repo 설치를 참고하세요.

Gerrit

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

android-review.googlesource.com 에서 Android Gerrit 검토 인터페이스를, android.googlesource.com에서 코드 탐색 인터페이스를 확인하세요.

Android 코드 검색을 사용하면 다운로드 없이 AOSP를 검색할 수 있습니다. 코드 검색을 사용하여 AOSP 소스 코드를 보고, 오픈소스 분기 간에 전환하고, 상호 참조를 탐색할 수 있습니다. 자세한 내용은 코드 검색 문서에 관한 Google Developers 사이트를 참고하세요.

기타 도구

Android 스튜디오는 Android 앱 개발을 위한 공식 통합 개발 환경 (IDE)입니다.

Android 디버그 브리지 (adb)를 사용하면 개발 워크스테이션을 Android 지원 기기에 직접 연결할 수 있으므로 패키지를 설치하고 변경사항을 평가할 수 있습니다.

AOSP 개발을 위해서는 플랫폼용 Android 스튜디오 (ASfP)를 사용하세요.