Google berkomitmen untuk memajukan ekuitas ras untuk komunitas kulit hitam. Lihat bagaimana.
Halaman ini diterjemahkan oleh Cloud Translation API.
Switch to English

Alur Kerja Kontrol Sumber

Bekerja dengan kode Android memerlukan penggunaan Git (sistem kontrol versi sumber terbuka) dan Repo (alat manajemen repositori buatan Google yang berjalan di atas Git). Lihat Alat Kontrol Sumber untuk penjelasan tentang hubungan antara Repo dan Git dan tautan ke dokumentasi pendukung untuk setiap alat.

Mengalir

Pengembangan Android melibatkan alur kerja dasar berikut:

  1. Mulai cabang topik baru menggunakan repo start .
  2. Edit file.
  3. Tahap perubahan menggunakan git add .
  4. Komit perubahan menggunakan git commit .
  5. Unggah perubahan ke server ulasan menggunakan repo upload .

Tugas

Bekerja dengan Git dan Repo di repositori kode Android melibatkan melakukan tugas-tugas umum berikut.

Perintah Deskripsi
repo init Menginisialisasi klien baru.
repo sync Menyinkronkan klien ke repositori.
repo start Mulai cabang baru.
repo status Memperlihatkan status cabang saat ini.
repo upload Mengunggah perubahan ke server ulasan.
git add Tahapan file.
git commit Melakukan file yang dipentaskan.
git branch Menunjukkan cabang saat ini.
git branch [branch] Membuat cabang topik baru.
git checkout [branch] Pindah HEAD ke cabang yang ditentukan.
git merge [branch] Menggabungkan [branch] ke cabang saat ini.
git diff Menampilkan perbedaan dari perubahan yang tidak dipentaskan.
git diff --cached Menampilkan perbedaan perubahan bertahap.
git log Menunjukkan sejarah cabang saat ini.
git log m/[codeline].. Menunjukkan komit yang tidak didorong.

Untuk informasi tentang menggunakan Repo untuk mengunduh sumber, lihat Mengunduh Sumber dan Referensi Perintah Repo .

Menyinkronkan klien

Untuk menyinkronkan file untuk semua proyek yang tersedia:

repo sync

Untuk menyinkronkan file untuk proyek yang dipilih:

repo sync PROJECT0 PROJECT1 ... PROJECTN

Membuat cabang topik

Mulai cabang topik di lingkungan kerja lokal Anda setiap kali Anda memulai perubahan, seperti ketika Anda mulai bekerja pada bug atau fitur baru. Cabang topik bukan salinan file asli; itu adalah penunjuk ke komit tertentu, yang membuat membuat cabang lokal dan beralih di antara mereka operasi yang ringan. Dengan menggunakan cabang, Anda dapat mengisolasi satu aspek pekerjaan Anda dari yang lain. Untuk artikel yang menarik tentang penggunaan cabang topik, lihat Memisahkan cabang topik .

Untuk memulai cabang topik menggunakan Repo, navigasikan ke proyek dan jalankan:

repo start BRANCH_NAME .

Periode trailing (.) Mewakili proyek di direktori kerja saat ini.

Untuk memverifikasi bahwa cabang baru telah dibuat:

repo status .

Menggunakan cabang topik

Untuk menetapkan cabang ke proyek tertentu:

repo start BRANCH_NAME PROJECT_NAME

Untuk daftar semua proyek, lihat android.googlesource.com . Jika Anda sudah menavigasi ke direktori proyek, cukup gunakan periode untuk mewakili proyek saat ini.

Untuk beralih ke cabang lain di lingkungan kerja lokal Anda:

git checkout BRANCH_NAME

Untuk melihat daftar cabang yang ada:

git branch

atau

repo branches

Kedua perintah mengembalikan daftar cabang yang ada dengan nama cabang saat ini didahului dengan tanda bintang (*).

Pementasan file

Secara default, Git pemberitahuan tetapi tidak melacak perubahan yang Anda buat dalam suatu proyek. Untuk memberi tahu Git untuk mempertahankan perubahan Anda, Anda harus menandai atau melakukan perubahan tersebut untuk dimasukkan dalam komit.

Untuk melakukan perubahan:

git add

Perintah ini menerima argumen untuk file atau direktori dalam direktori proyek. Terlepas dari namanya, git add tidak hanya menambahkan file ke repositori Git; itu juga dapat digunakan untuk melakukan modifikasi dan penghapusan file.

Melihat status klien

Untuk daftar status file:

repo status

Untuk melihat pengeditan yang tidak dikomit (pengeditan lokal yang tidak ditandai untuk komit):

repo diff

Untuk melihat pengeditan yang dilakukan (pengeditan terletak yang ditandai untuk komit), pastikan bahwa Anda berada di direktori proyek kemudian jalankan git diff dengan argumen yang di- cached :

cd ~/WORKING_DIRECTORY/PROJECT
git diff --cached

Melakukan perubahan

Komit adalah unit dasar kontrol revisi di Git dan terdiri dari snapshot dari struktur direktori dan isi file untuk keseluruhan proyek. Untuk membuat komit di Git:

git commit

Saat diminta untuk pesan komit, berikan pesan singkat (tapi bermanfaat) untuk perubahan yang diajukan ke AOSP. Jika Anda tidak menambahkan pesan komit, komit batal.

Mengunggah perubahan ke Gerrit

Perbarui ke revisi terbaru, lalu unggah perubahan:

repo sync
repo upload

Perintah-perintah ini mengembalikan daftar perubahan yang telah Anda lakukan dan meminta Anda untuk memilih cabang untuk diunggah ke server ulasan. Jika hanya ada satu cabang, Anda melihat prompt sederhana y/n .

Menyelesaikan konflik sinkronisasi

Jika perintah repo sync mengembalikan konflik sinkronisasi:

  1. Lihat file yang tidak dihapus (kode status = U).
  2. Edit wilayah konflik seperlunya.
  3. Ubah ke direktori proyek yang relevan. Tambahkan dan komit file yang terpengaruh, lalu rebase perubahan:
    git add .
    git commit
    git rebase --continue
    
  4. Setelah rebase selesai, mulai seluruh sinkronisasi lagi:
    repo sync PROJECT0 PROJECT1 ... PROJECTN
    

Membersihkan klien

Setelah menggabungkan perubahan ke Gerrit, perbarui direktori kerja lokal Anda, lalu gunakan repo prune untuk menghapus cabang topik basi dengan aman:

repo sync
repo prune

Menghapus klien

Karena semua informasi status disimpan di klien Anda, Anda hanya perlu menghapus direktori dari sistem file Anda:

rm -rf WORKING_DIRECTORY

Menghapus klien secara permanen menghapus segala perubahan yang belum Anda unggah untuk ditinjau.