Gerrit - Panduan Cepat

Gerrit adalah alat peninjau kode berbasis web yang terintegrasi dengan Git dan dibangun di atas sistem kontrol versi Git (membantu pengembang untuk bekerja sama dan memelihara riwayat pekerjaan mereka). Ini memungkinkan untuk menggabungkan perubahan ke repositori Git ketika Anda selesai dengan tinjauan kode.

Gerrit dikembangkan oleh Shawn Pearce di Google yang ditulis dalam Java, Servlet, GWT (Google Web Toolkit). Rilis stabil Gerrit adalah 2.12.2 dan diterbitkan pada 11 Maret 2016 dengan lisensi di bawah Lisensi Apache v2 .

Mengapa Menggunakan Gerrit?

Berikut adalah alasan tertentu, mengapa Anda harus menggunakan Gerrit.

  • Anda dapat dengan mudah menemukan kesalahan dalam kode sumber menggunakan Gerrit.

  • Anda dapat bekerja dengan Gerrit, jika Anda memiliki klien Git biasa; tidak perlu memasang klien Gerrit.

  • Gerrit dapat digunakan sebagai perantara antara pengembang dan repositori git.

Fitur Gerrit

  • Gerrit adalah sistem kontrol versi Git gratis dan open source.

  • Antarmuka pengguna Gerrit dibentuk di Google Web Toolkit .

  • Ini adalah kerangka kerja ringan untuk meninjau setiap komit.

  • Gerrit bertindak sebagai repositori, yang memungkinkan mendorong kode dan membuat tinjauan untuk komit Anda.

Keuntungan Gerrit

  • Gerrit menyediakan kontrol akses untuk repositori Git dan antarmuka web untuk peninjauan kode.

  • Anda dapat memasukkan kode tanpa menggunakan alat baris perintah tambahan.

  • Gerrit dapat mengizinkan atau menolak izin di tingkat repositori dan turun ke tingkat cabang.

  • Gerrit didukung oleh Eclipse.

Kekurangan Gerrit

  • Meninjau, memverifikasi, dan mengirim ulang kode akan memperlambat waktu ke pasar.

  • Gerrit hanya dapat bekerja dengan Git.

  • Gerrit lambat dan tidak mungkin mengubah urutan urutan daftar perubahan.

  • Anda memerlukan hak administrator untuk menambahkan repositori di Gerrit.

Sebelum Anda dapat menggunakan Gerrit, Anda harus menginstal Git dan melakukan beberapa perubahan konfigurasi dasar. Berikut adalah langkah-langkah untuk menginstal klien Git di berbagai platform.

Pemasangan Git Client

Linux

Anda dapat menginstal Git di Linux dengan menggunakan alat manajemen paket perangkat lunak. Misalnya, jika Anda menggunakan Fedora, Anda dapat menggunakan sebagai -

sudo yum install git

Jika Anda menggunakan distribusi berbasis Debian seperti Ubuntu, gunakan perintah berikut -

sudo apt-get install git

Windows

Anda dapat menginstal Git di Windows dengan mengunduhnya dari situs web Git. Cukup buka tautan msysgit.github.io dan klik tombol unduh.

Mac

Git dapat diinstal di Mac menggunakan perintah berikut -

brew install git

Cara lain untuk menginstal Git adalah dengan mendownloadnya dari situs Git. Masuk saja ke tautan Git install di Mac , yang akan menginstal Git untuk platform Mac.

Setelah Anda menginstal Git, Anda perlu menyesuaikan variabel konfigurasi untuk menambahkan informasi pribadi Anda. Anda bisa mendapatkan dan menyetel variabel konfigurasi dengan menggunakan alat Git bernama git config bersama dengan opsi -l (opsi ini menyediakan konfigurasi saat ini).

git config -l

Saat Anda menjalankan perintah di atas, Anda akan mendapatkan variabel konfigurasi seperti yang ditunjukkan pada gambar berikut

Anda dapat mengubah informasi yang disesuaikan kapan saja dengan menggunakan perintah lagi. Di bab selanjutnya, Anda akan mempelajari cara mengkonfigurasi nama pengguna dan Email pengguna dengan menggunakan perintah git config .

Anda dapat melacak setiap komit dengan menyetel variabel nama dan email . Variabel nama menentukan nama, sedangkan variabel email mengidentifikasi alamat email yang terkait dengan Git commit. Anda dapat mengatur ini menggunakan perintah berikut -

git config --global user.email "[email protected]"
git config --global user.name "your_name"

Saat Anda menjalankan perintah di atas, Anda akan mendapatkan nama pengguna dan alamat email seperti yang ditunjukkan pada gambar berikut.

SSH adalah singkatan dari Secure Shell atau terkadang protokol Secure Socket Shell yang digunakan untuk mengakses layanan jaringan dengan aman dari komputer jarak jauh. Anda dapat mengatur kunci SSH untuk menyediakan koneksi yang andal antara komputer dan Gerrit.

Anda dapat memeriksa kunci SSH yang ada di komputer lokal Anda menggunakan perintah berikut di Git Bash -

$ ls ~/.ssh

Setelah mengklik tombol enter, Anda akan melihat kunci SSH yang ada seperti yang ditunjukkan pada gambar berikut -

Jika Anda tidak menemukan kunci SSH yang ada, Anda perlu membuat kunci SSH baru.

Menghasilkan Kunci SSH Baru

Anda dapat membuat kunci SSH baru untuk autentikasi menggunakan perintah berikut di Git Bash -

$ ssh-keygen -t rsa -C "[email protected]"

Jika Anda sudah memiliki kunci SSH, jangan buat kunci baru, karena akan ditimpa. Anda dapat menggunakan perintah ssh-keygen , hanya jika Anda telah menginstal Git dengan Git Bash.

Ketika Anda menjalankan perintah di atas, ini akan membuat 2 file di direktori ~ / .ssh .

  • ~/.ssh/id_rsa - Ini adalah kunci pribadi atau kunci identifikasi.

  • ~/.ssh/id_rsa.pub - Ini adalah TV umum.

Anda dapat menambahkan kunci SSH ke ssh-agent pada platform berbeda yang dibahas lebih lanjut.

Linux

Gunakan perintah berikut di sistem Linux untuk menambahkan kunci SSH

cat /home/<local-user>/.ssh/id_rsa.pub

Windows

Buka GIT GUI dan buka Help → Show SSH Key seperti yang ditunjukkan pada gambar berikut.

Kemudian, klik Copy To Clipboard tombol, untuk menyalin kunci ke papan klip.

Mac

Di Mac OS X, Anda dapat menyalin konten id_rsa.pub ke clipboard menggunakan perintah berikut.

$ pbcopy < ~/.ssh/id_rsa.pub

Kunci SSH dapat ditambahkan ke akun Gerrit menggunakan langkah-langkah berikut -

  • Step 1- Pertama buat akun di layanan wmflabs.org .

  • Step 2- Selanjutnya masuk ke antarmuka web untuk Gerrit .

  • Step 3 - Kemudian di pojok kanan atas, klik nama pengguna Anda dan pilih opsi Pengaturan.

    Di sini, kami telah membuat akun dengan nama John untuk menggunakan Gerrit

  • Step 4 - Klik opsi "Kunci Publik SSH" di menu sebelah kiri dan tempel kunci Publik SSH di bidang.

Anda dapat menambahkan kunci SSH ke Git menggunakan perintah berikut -

  • Step 1 - Buka Git Bash dan dapatkan ssh-agent menggunakan perintah berikut.

$ eval 'ssh-agent'
  • Step 2 - Selanjutnya, tambahkan kunci SSH ke ssh-agent menggunakan perintah berikut

$ ssh-add ~/.ssh/id_rsa
  • Step 3 - Sekarang, jalankan ssh menggunakan perintah berikut, yang cocok dengan sidik jari SSH yang digunakan saat logging pertama kali.

$ ssh -p 29418 <user_name>@gerrit.wikimedia.org

Pada gambar di atas, Anda bisa melihatnya xyz123 adalah nama akun shell instance, yang digunakan saat membuat akun Gerrit dan Abc123 adalah nama pengguna akun Gerrit Anda.

Anda dapat mendownload contoh menggunakan Git bersama dengan kode sumber dari setiap proyek yang diatur di gerrit.wikimedia.org menggunakan perintah Git Bash berikut.

$ git clone 
ssh://<user_name>@gerrit.wikimedia.org:29418/mediawiki/extensions/examples

Perintah git clone mengkloning direktori ke direktori baru; dengan kata lain mendapatkan salinan dari repositori yang ada . Saat Anda menjalankan perintah di atas, Anda akan mendapatkan tangkapan layar yang mirip dengan berikut ini.

Perintah di atas mengkloning repositori 'contoh' dan menerima objek, file, dll. Dari repositori itu dan menyimpannya di cabang lokal Anda.

Anda dapat bekerja dengan Gerrit dengan menginstal git-review di berbagai platform seperti yang dibahas dalam bab ini.

Windows

Di Windows, Anda dapat menginstal git-review seperti yang tercantum dalam langkah-langkah berikut.

Step 1- Pertama instal Python untuk menginstal git-review.

Step 2 - Simpan instalasi Python di direktori default (seperti C: \ Python27) daripada menginstal di direktori lain.

Step 3 - Selanjutnya, setel variabel lingkungan untuk direktori skrip Python menggunakan jalur sebagai C:\Python27\;C:\Python27\Scripts\;

git_review_install

Step 4- Dengan versi 2.7, Python akan menginstal pip secara otomatis. Untuk versi Python 2.7 yang lebih lama, Anda dapat menginstal pip seperti yang dijelaskan di tautan ini .

Step 5 - Jalankan Git Bash terbuka dan instal git-review menggunakan perintah berikut.

$ pip install git-review

Linux

Di Linux, Anda dapat menginstal git-review seperti yang dijelaskan dalam langkah-langkah berikut -

Step 1Pengguna platform Linux tidak memiliki akses root pada host bersama. Karenanya, tanpa akses root, Anda dapat menginstal git-review secara lokal di direktori pengguna menggunakan perintah berikut -

virtualenv --python=/usr/bin/python2.6 virtualenv
virtualenv/bin/pip install git-review==1.21

Step 2 - Anda dapat memperluas jalur ke biner lokal menggunakan dua cara -

PATH=$PATH:~/virtualenv/bin/
PATH=~/virtualenv/bin/:$PATH

Step 3 - Sekarang, gunakan perintah berikut untuk menyiapkan pekerjaan dengan Gerrit.

git review -s
 or
~/virtualenv/bin/git-review -s

Step 4 - Dengan akses root, git-review dapat diinstal menggunakan perintah berikut.

sudo apt-get install git-review

Step 5- Jika tidak ada apt-get setelah menginstal Python, gunakan perintah berikut.

$ sudo easy_install pip
$ sudo pip install git-review==1.21

Step 6 - Jalankan perintah berikut untuk bekerja dengan Gerrit.

git review -s

Mac OS X

Di Mac, Anda dapat menginstal git-review menggunakan langkah-langkah berikut.

Step 1- Instal Homebrew dari tautan ini .

Step 2 - Selanjutnya, instal git-review menggunakan perintah berikut.

brew install git-review

Gerrit dibangun di atas sistem kontrol versi Git, yang mengekstrak kode dari host lain, mendorong perubahan ke kode, mengirimkan kode untuk ditinjau, dll. Nama jarak jauh default Git adalah origin dan kami memberi tahu git-review untuk menggunakan ini nama 'asal' dengan menggunakan perintah berikut.

$ git config --global gitreview.remote origin

Git-review dapat digunakan untuk mengirim cabang git ke Gerrit untuk ditinjau. Anda dapat menyiapkan gitreview menggunakan perintah berikut di direktori project.

$ git review -s

Git-review dapat digunakan sebagai alat baris perintah untuk mengkonfigurasi klon Git, mengirimkan cabang ke Gerrit, mengambil file yang ada, dll. Git-review mencari gerrit bernama jarak jauh untuk bekerja dengan Gerrit secara default.

Jika git-review menemukan Gerrit remote, maka itu akan mengirimkan cabang ke HEAD:refs/for/masterdi lokasi terpencil dan jika tidak ada akses jarak jauh Gerrit, git-review mencari file .gitreview file di root repositori bersama dengan informasi jarak jauh gerrit.

Git-review memproses hal-hal berikut secara internal -

  • Ini akan memeriksa apakah repositori jarak jauh berfungsi atau tidak untuk mengirimkan cabang.

  • Jika tidak ada akses jarak jauh Gerrit, maka ia akan meminta nama pengguna dan mencoba mengakses repositori lagi.

  • Ini akan membuat akses jarak jauh yang disebut gerrit yang mengarah ke Gerrit.

  • Ini akan menginstal hook commit-msg.

Anda dapat memperbarui cabang master menggunakan perintah berikut. Perintah git-pull mengambil dari cabang lokal lain atau terintegrasi dengan repositori lain.

git pull origin master
  • Perintah ini akan menarik perubahan dari remote asal (URL dari remote untuk diambil), cabang master dan menggabungkan perubahan ke cabang lokal yang diperiksa.

  • Master asal adalah salinan cache dari yang terakhir ditarik dari asal.

  • Git pull adalah kombinasi dari git fetch (mengambil komit baru dari repositori jarak jauh) dan git merge (mengintegrasikan komit baru ke dalam cabang lokal).

  • Git pull menggabungkan cabang lokal dengan cabang jarak jauh secara default.

Anda dapat membuat cabang di mesin lokal menggunakan perintah berikut.

$ git checkout -b name_of_branch origin/master

Perintah di atas membuat cabang baru seperti yang ditunjukkan pada gambar berikut.

Di sini, kami telah menggunakan branch123sebagai cabang lokal baru. Anda dapat menampilkan cabang baru dari 'master' menggunakan perintah berikut.

$ git branch

Perintah di atas menghasilkan hasil seperti yang ditunjukkan pada tangkapan layar berikut.

Git checkout menavigasi antar cabang, memperbarui file di direktori kerja, dan memberi tahu Git untuk merekam komit pada cabang itu.

Saat Anda mengubah kode di sistem file lokal, Anda dapat memeriksa perubahan di dalam direktori menggunakan perintah berikut.

$ git diff

Di direktori proyek, kami akan mengubah beberapa perubahan pada file bernama Example/Example.hooks.phpdan jalankan perintah di atas. Kami akan mendapatkan hasil seperti yang ditunjukkan pada tangkapan layar berikut.

Anda dapat memeriksa perubahan yang dilakukan pada file atau direktori menggunakan perintah berikut.

$ git status

Perintah di atas memungkinkan untuk melihat perubahan mana yang telah dipentaskan, mana yang belum, dan file mana yang tidak dilacak oleh Git.

Selanjutnya, Anda dapat menambahkan perubahan di direktori kerja dan memperbarui file di komit berikutnya menggunakan perintah berikut.

$ git add Example/Example.hooks.php

Setelah menambahkan file, jalankan kembali perintah git status untuk meninjau perubahan yang ditambahkan ke area pementasan seperti yang ditunjukkan pada tangkapan layar berikut.

Anda dapat melihat perbedaan antara indeks dan komit terakhir Anda, dan konten apa yang telah dipentaskan, menggunakan perintah berikut.

$ git diff --cached

Anda dapat mendorong perubahan ke direktori jarak jauh dari repositori lokal menggunakan perintah berikut.

$ git commit

Ketika Anda menjalankan perintah di atas, itu akan meminta untuk menambahkan pesan komit untuk perubahan Anda. Pesan ini akan dilihat oleh orang lain ketika Anda mendorong komit ke repositori lain.

Tambahkan pesan komit dan jalankan perintah lagi sebagai git komit , yang akan menampilkan pesan komit seperti yang ditunjukkan pada tangkapan layar berikut.

Anda perlu meninjau perubahan di Gerrit sebelum menggabungkannya ke master. Perubahan dapat disinkronkan yang terjadi di master. Gunakan perintah berikut dalam cabang yang Anda kerjakan.

$ git pull --rebase origin master
  • Perintah di atas akan mengambil perubahan atau komit dari cabang jarak jauh dan me-rebase komit di atas master.

  • Saat Anda selesai dengan perubahan dan mengubah dasar komit, Anda dapat mendorong perubahan Anda ke Gerrit untuk ditinjau.

  • Git pull --rebase sering digunakan jika perubahan tidak memerlukan cabang terpisah.

  • Git pull adalah kombinasi dari git fetch dan git merge; dimana git pull --rebase adalah kombinasi dari git menjemput dan rebase git.

Pertama, jalankan perintah sebagai master git pull origin seperti yang ditunjukkan pada tangkapan layar berikut.

Sekarang gunakan perintah sebagai git rebase master untuk me-rebase komit seperti yang ditunjukkan pada tangkapan layar berikut.

Anda dapat mengirimkan tambalan untuk ditinjau dengan menggunakan git-reviewperintah. Set perubahan dapat didorong ke Gerrit, dengan menjalankangit review -R perintah seperti yang ditunjukkan pada tangkapan layar berikut.

Itu -R option menginformasikan git-review untuk tidak menyelesaikan rebase sebelum mengirimkan perubahan git ke Gerrit.

Anda dapat mengirimkan kode ke cabang lain selain master, menggunakan perintah berikut.

git review name_of_branch

Dimungkinkan juga untuk mengirimkan kode ke remote yang berbeda, menggunakan perintah berikut.

git review -r name_of_remote

Perubahan dapat dilihat di dasbor Gerrit dengan mengklik link ini .

Klik tautan nama penulis yang dimodifikasi , dan Anda akan mendapatkan tangkapan layar berikut.

Klik tautan difusi untuk melihat file yang diubah dengan detail lainnya seperti yang ditunjukkan pada tangkapan layar berikut.

Anda dapat mengedit proyek melalui antarmuka web setelah masuk ke akun Gerrit seperti yang ditunjukkan pada langkah-langkah berikut.

Step 1- Buka dasbor Gerrit dengan mengklik tautan ini . Anda akan mendapatkan tangkapan layar berikut.

Step 2 - Selanjutnya klik mediawiki/extensions/examplestautan ditentukan di bawah kolom Proyek .

Step 3- Klik tautan Umum di bilah alat seperti yang ditunjukkan pada tangkapan layar berikut.

Step 4- Saat Anda membuka tautan Umum , akan muncul tangkapan layar seperti berikut.

Step 5- Klik tombol Buat Perubahan dan itu akan membuka jendela popup dengan beberapa detail seperti yang ditunjukkan pada tangkapan layar berikut.

Step 6- Masukkan informasi dan klik tombol Buat .

Setelah membuat perubahan, itu akan menampilkan informasi seperti yang ditunjukkan pada tangkapan layar berikut.

Step 7- Klik Edit , lalu klik Tambahkan . Sekarang pilih file yang ingin Anda edit. Di sini kami telah memilih fileExample/i18n/en.json.

Saat Anda membuka file, itu akan menampilkan data json seperti yang ditentukan pada tangkapan layar berikut.

Step 8- Klik Simpan, lalu klik tombol Tutup .

Step 9- Terakhir klik tombol Publikasikan untuk menerbitkan file yang diedit

Step 10- Anda dapat mengubah pesan komit dengan mengklik tautan Pesan Komit seperti yang ditunjukkan pada tangkapan layar berikut.

Step 11- Tekan e pada keyboard dan tambahkan beberapa informasi tambahan, jika Anda ingin Klik Simpan lalu klik tombol Tutup .

Peninjauan kode adalah bagian penting dari alur kerja di Gerrit. Konsep dasarnya adalah kode harus ditinjau sebelum digabungkan.

Alur kerja kode untuk MediaWiki dapat ditinjau sebelum menggabungkannya dan juga ekstensi dapat ditinjau yang menyesuaikan tampilan dan karya MediaWiki. Ada satu kasus khusus di mana Anda dapat mendorong komitmen internasionalisasi dan lokalisasi .

Anda dapat mendorong semua komit ke cabang jarak jauh saat Anda menyelesaikan pengembangan. Seseorang akan mengambil perubahan ke lokal dan menggabungkan perubahan yang diambil itu ke master lokal dengan membuat komit gabungan. Anda dapat menerapkan perubahan ini kerefs/for/master.

Pemilik proyek berarti bahwa proyek tersebut milik orang yang disebutkan. Pemilik proyek adalah grup virtual di mana Anda tidak dapat menambahkan anggota atau grup lain di dalamnya. Pemilik proyek memberikan hak akses untuk memberikan izin pada proyek ke grup yang berbeda.

Anda dapat melihat hak akses proyek Anda menggunakan langkah-langkah berikut.

Step 1- Buka dasbor Gerrit dengan mengklik tautan ini .

Step 2- Klik Proyek → opsi Daftar . Cari proyek dalam daftar proyek Anda dan klik seperti yang ditunjukkan pada gambar berikut.

Step 3- Saat Anda membuka proyek Anda, klik opsi Access seperti yang ditunjukkan pada gambar layar berikut.

Step 4- Klik opsi edit . Anda dapat mengubah hak akses dengan mengklik menu dropdown. Klik tombol Simpan Perubahan seperti yang ditunjukkan pada tangkapan layar berikut.

Siapapun dapat meninjau kode dan mengomentari kode di Gerrit. Pertimbangkan langkah-langkah berikut -

Step 1 - Masuk ke Gerrit untuk membuka dasbor Gerrit seperti yang ditentukan di bab sebelumnya.

Step 2 - Sekarang, klik subjek apa pun yang berisi proyek Gerrit, cabang, tanggal pembaruan, dll. Seperti yang ditunjukkan pada tangkapan layar berikut.

Step 3- Selanjutnya akan muncul layar. Klik opsi Komit Pesan seperti yang ditunjukkan pada tangkapan layar berikut.

Bidang penting dari kumpulan perubahan adalah seperti Peninjau, Tambah Peninjau, Berdampingan, dll. Membandingkan kumpulan tambalan termasuk memilih daftar riwayat versi lama, memperluas rincian kumpulan tambalan yang lebih baru, dll. Meninjau dan menggabungkan atau menolak kode termasuk tombol ubah pengabaian, tombol pengiriman tambalan, dll. yang tidak ada dalam versi Gerrit saat ini.