Để làm việc với mã Android, bạn cần sử dụng cả Git (một hệ thống quản lý phiên bản mã nguồn mở) và Repo (một công cụ quản lý kho lưu trữ do Google xây dựng, chạy trên Git). Hãy xem Quy trình kiểm soát nguồn để biết thông tin tóm tắt về các hành động thường xuyên mà bạn có thể thực hiện, chẳng hạn như tải các thay đổi lên để xem xét.
Git
Git xử lý các dự án lớn được phân phối trên nhiều kho lưu trữ. Android sử dụng Git cho các thao tác cục bộ như phân nhánh cục bộ, cam kết, chênh lệch và chỉnh sửa. Một trong những thách thức khi thiết lập dự án Android là xác định cách hỗ trợ cộng đồng bên ngoài một cách hiệu quả nhất – từ cộng đồng người có sở thích đến các OEM lớn xây dựng thiết bị tiêu dùng cho thị trường đại chúng. Chúng tôi muốn các thành phần có thể thay thế và muốn các thành phần thú vị có vòng đời riêng, bên ngoài Android. Đầu tiên, chúng tôi chọn một hệ thống kiểm soát phiên bản phân tán, sau đó thu hẹp phạm vi xuống còn Git.
Để biết thêm thông tin về Git, hãy tham khảo Tài liệu về Git này.
Repo
Repo hợp nhất các kho lưu trữ Git khi cần thiết, thực hiện các hoạt động tải lên hệ thống kiểm soát phiên bản Gerrit và tự động hoá các phần của quy trình phát triển Android.
Repo Launcher cung cấp một tập lệnh Python khởi tạo quy trình thanh toán và tải phần thứ hai xuống, tức là công cụ Repo đầy đủ. Công cụ Repo đầy đủ có trong một quy trình kiểm xuất mã nguồn Android. Theo mặc định, tệp này nằm trong $SRCDIR/.repo/repo/...
và nhận các lệnh được chuyển tiếp từ Trình chạy Repo đã tải xuống.
Repo không thay thế Git, mà chỉ giúp bạn dễ dàng làm việc với Git trong ngữ cảnh của Android. Repo sử dụng tệp kê khai để tổng hợp các dự án Git thành siêu dự án Android. Bạn có thể đặt lệnh repo
(là một tập lệnh Python có thể thực thi) ở bất kỳ vị trí nào trong đường dẫn. Khi làm việc với các tệp nguồn Android, bạn có thể sử dụng Repo cho các thao tác trên mạng, chẳng hạn như với một thư mục làm việc Repo duy nhất.
Trong hầu hết các trường hợp, bạn có thể dùng Git thay vì Repo hoặc kết hợp các lệnh Repo và Git để tạo thành các lệnh phức tạp. Tuy nhiên, việc sử dụng Repo cho các thao tác cơ bản trên mạng giúp công việc của bạn trở nên đơn giản hơn nhiều. Để biết thêm thông tin chi tiết về Repo, hãy xem Tài liệu tham khảo về lệnh Repo, Tệp README của Repo, Các lệnh gọi trước khi tải lên (các kiểm thử có thể được bật trong Repo) và tài liệu chung trong AOSP.
Để tải xuống và cài đặt Repo Launcher từ git-repo-downloads, hãy xem phần Cài đặt Repo.
Gerrit
Gerrit là một hệ thống đánh giá mã dựa trên web dành cho các dự án sử dụng Git. Gerrit khuyến khích việc sử dụng Git tập trung hơn bằng cách cho phép tất cả người dùng được uỷ quyền gửi các thay đổi. Những thay đổi này sẽ tự động hợp nhất nếu vượt qua quy trình đánh giá mã. Ngoài ra, Gerrit giúp đơn giản hoá việc xem xét, hiển thị các thay đổi song song trong trình duyệt và cho phép bình luận nội dòng.
Tìm giao diện đánh giá Gerrit của Android tại android-review.googlesource.com và giao diện điều hướng mã tại android.googlesource.com.
Android Code Search
Android Code Search cho phép bạn tìm kiếm AOSP mà không cần tải bất cứ nội dung nào xuống. Bạn có thể dùng tính năng Tìm kiếm mã để xem mã nguồn AOSP, chuyển đổi giữa các nhánh nguồn mở và điều hướng các mối tham chiếu chéo. Để biết thêm thông tin, hãy xem tài liệu về tính năng Tìm kiếm mã trên trang web dành cho nhà phát triển của Google.
Các công cụ khác
Android Studio là môi trường phát triển tích hợp (IDE) chính thức để phát triển ứng dụng Android.
Cầu gỡ lỗi Android (ADB) cho phép bạn kết nối trực tiếp máy trạm phát triển với thiết bị chạy Android để có thể cài đặt các gói và đánh giá những thay đổi của mình.
Đối với hoạt động phát triển AOSP, hãy sử dụng Android Studio for Platform (ASfP).