Bagikan melalui


Apa itu Git?

Git telah menjadi standar di seluruh dunia untuk kontrol versi. Jadi apa itu Git tepatnya?

Git adalah sistem kontrol versi terdistribusi, yang berarti bahwa klon lokal proyek adalah repositori kontrol versi lengkap. Repositori lokal yang berfungsi penuh ini memudahkan untuk bekerja secara offline atau jarak jauh. Pengembang melakukan pekerjaan secara lokal, lalu menyinkronkan salinan repositori mereka dengan salinan di server. Paradigma ini berbeda dengan kontrol versi terpusat di mana klien harus menyinkronkan kode dengan server sebelum membuat versi kode baru.

Fleksibilitas dan popularitas Git menjadikannya pilihan yang bagus untuk tim mana pun. Banyak pengembang dan lulusan perguruan tinggi sudah tahu cara menggunakan Git. Komunitas pengguna Git telah membuat sumber daya untuk melatih pengembang dan popularitas Git memudahkan untuk mendapatkan bantuan saat diperlukan. Hampir setiap lingkungan pengembangan memiliki dukungan Git dan alat baris perintah Git yang diterapkan pada setiap sistem operasi utama.

Dasar-dasar Git

Setiap kali pekerjaan disimpan, Git membuat penerapan. Penerapan adalah snapshot semua file pada satu titik waktu. Jika file belum berubah dari satu penerapan ke penerapan berikutnya, Git menggunakan file yang disimpan sebelumnya. Desain ini berbeda dari sistem lain yang menyimpan versi awal file dan menyimpan catatan delta dari waktu ke waktu.

Linear graph of development in Git

Penerapan membuat tautan ke penerapan lain, membentuk grafik riwayat pengembangan. Anda dapat mengembalikan kode ke penerapan sebelumnya, memeriksa perubahan file dari satu penerapan ke penerapan berikutnya, dan meninjau informasi seperti di mana dan kapan perubahan dilakukan. Penerapan diidentifikasi dalam Git oleh hash kriptografi unik dari konten penerapan. Karena semuanya di-hash, tidak mungkin untuk membuat perubahan, kehilangan informasi, atau file yang rusak tanpa Git mendeteksinya.

Cabang

Setiap pengembang menyimpan perubahan pada repositori kode lokal mereka sendiri. Akibatnya, mungkin ada banyak perubahan yang berbeda berdasarkan penerapan yang sama. Git menyediakan alat untuk mengisolasi perubahan lalu menggabungkannya kembali bersama-sama. Cabang, yang merupakan penunjuk ringan untuk bekerja sedang dalam proses, mengelola pemisahan ini. Setelah pekerjaan yang dibuat di cabang selesai, pekerjaan dapat digabungkan kembali ke cabang utama (atau batang) tim.

Commits on a branch

File dan penerapan

File di Git berada di salah satu dari tiga status: diubah, bertahap, atau diterapkan. Saat file pertama kali diubah, perubahan hanya ada di direktori kerja. Mereka belum menjadi bagian dari penerapan atau riwayat pengembangan. Pengembang harus menahapkan file yang diubah untuk disertakan dalam penerapan. Area penahapan berisi semua perubahan untuk disertakan dalam penerapan berikutnya. Setelah pengembang senang dengan file bertahap, file dikemas sebagai penerapan dengan pesan yang menjelaskan apa yang berubah. Penerapan ini menjadi bagian dari riwayat pengembangan.

file_status_lifecycle-2

Penahapan memungkinkan pengembang memilih perubahan file mana yang akan disimpan dalam penerapan untuk memecah perubahan besar menjadi serangkaian penerapan yang lebih kecil. Dengan mengurangi cakupan penerapan, lebih mudah untuk meninjau riwayat penerapan untuk menemukan perubahan file tertentu.

Keuntungan Git

Manfaat Git banyak.

Pengembangan simultan

Setiap orang memiliki salinan kode lokalnya sendiri dan dapat bekerja secara bersamaan di cabangnya sendiri. Git berfungsi secara offline karena hampir setiap operasi bersifat lokal.

Rilis yang lebih cepat

Cabang memungkinkan pengembangan yang fleksibel dan simultan. Cabang utama berisi kode stabil dan berkualitas tinggi tempat Anda merilis. Cabang fitur berisi pekerjaan yang sedang berlangsung, yang digabungkan ke cabang utama setelah selesai. Dengan memisahkan cabang rilis dari pengembangan yang sedang berlangsung, lebih mudah untuk mengelola kode yang stabil dan mengirim pembaruan dengan lebih cepat.

Integrasi bawaan

Karena popularitasnya, Git terintegrasi ke dalam sebagian besar alat dan produk. Setiap IDE utama memiliki dukungan Git bawaan, dan banyak alat mendukung integrasi berkelanjutan, penyebaran berkelanjutan, pengujian otomatis, pelacakan item kerja, metrik, dan integrasi fitur pelaporan dengan Git. Integrasi ini menyederhanakan alur kerja sehari-hari.

Dukungan komunitas yang kuat

Git adalah sumber terbuka dan telah menjadi standar de facto untuk kontrol versi. Tidak ada kekurangan alat dan sumber daya yang tersedia bagi tim untuk memanfaatkan. Volume dukungan komunitas untuk Git yang dibandingkan dengan sistem kontrol versi lainnya memudahkan untuk memperoleh bantuan saat diperlukan.

Git berfungsi dengan tim mana pun

Menggunakan Git dengan alat manajemen kode sumber meningkatkan produktivitas tim dengan mendorong kolaborasi, menegakkan kebijakan, mengotomatiskan proses, dan meningkatkan visibilitas dan keterlacakan pekerjaan. Tim dapat menyelesaikan alat individu untuk kontrol versi, pelacakan item kerja, serta integrasi dan penyebaran berkelanjutan. Atau, mereka dapat memilih solusi seperti GitHub atau Azure DevOps yang mendukung semua tugas ini di satu tempat.

Permintaan pull

Gunakan permintaan pull untuk mendiskusikan perubahan kode dengan tim sebelum menggabungkannya ke cabang utama. Diskusi dalam permintaan pull sangat berharga untuk memastikan kualitas kode dan meningkatkan pengetahuan di seluruh tim Anda. Platform seperti GitHub dan Azure DevOps menawarkan pengalaman permintaan pull yang kaya di mana pengembang dapat menelusuri perubahan file, meninggalkan komentar, memeriksa penerapan, melihat build, dan memilih untuk menyetujui kode.

Kebijakan cabang

Tim dapat mengonfigurasi GitHub dan Azure DevOps untuk menerapkan alur kerja dan proses yang konsisten di seluruh tim. Mereka dapat menyiapkan kebijakan cabang untuk memastikan bahwa permintaan pull memenuhi persyaratan sebelum selesai. Kebijakan cabang melindungi cabang penting dengan mencegah dorongan langsung, mengharuskan peninjau, dan memastikan build bersih.

Langkah berikutnya

Menginstal dan menyiapkan Git