Praktik Terbaik Git – Cara memaksimalkan (g)it

Diterbitkan: 2019-07-02

Pull, Fetch, Commit, Push, Merge, Rebase – apakah istilah-istilah ini sudah berhasil diterapkan dalam kehidupan sehari-hari Anda? Ketika Linus Torvalds membuat versi Git pertamanya, dia menggambarkannya sebagai "pelacak konten bodoh". Maju cepat ke hari ini, perangkat lunak sumber terbuka gratis ini sekarang menjadi sistem kontrol versi paling populer.

Apa itu Git?

Tidakkah Anda berharap dapat memutar kembali waktu kadang-kadang, sehingga Anda dapat membuat keputusan yang lebih baik atau melakukan sesuatu dengan cara yang berbeda? Nah, di dunia teknologi dan coding, Anda bisa. Git adalah sistem kontrol versi terdistribusi sumber terbuka yang menyimpan versi kode berharga Anda setiap kali Anda membuat perubahan/penambahan apa pun. Jadi, kapan pun Anda perlu melakukan rollback, Anda cukup memilih versi yang berfungsi dan voila! Git juga memungkinkan kerja bebas gangguan dalam tim karena pengembang mengerjakan salinan lokal masing-masing secara bersamaan. Setiap perubahan oleh setiap anggota tim dilacak, sehingga menjaga transparansi dalam aliran yang terorganisir. Jadi apa itu GitHub? GitHub adalah layanan hosting repositori untuk Git yang juga memiliki banyak fitur untuk mengoptimalkan sistem kontrol versi Anda.
Alur Kerja Git

Setiap organisasi memiliki alur kerja Git yang berbeda. Alur kerja Git yang paling sukses adalah yang memberi tim Anda ruang yang cukup untuk produktivitas sambil memaksimalkan efektivitas output mereka. Itu harus dapat diskalakan dengan ukuran tim Anda dan harus meminimalkan jumlah konflik yang dapat muncul. Alur kerja Git Terpusat adalah dasar di mana alur kerja Git lainnya dibangun, seperti alur kerja percabangan Fitur, alur kerja forking, alur kerja Gitflow, dll. Alur kerja harus direncanakan untuk meningkatkan dan melengkapi budaya organisasi Anda. Untuk setiap Tim, Alur Kerja Git mereka sendiri.

Mengapa menggunakan Git?

1. Arsitektur terdistribusi

Tidak seperti sistem kontrol versi terpusat yang memaksa pengembang untuk mengakses repositori pusat tunggal untuk dapat "melakukan checkout" dan melakukan perubahan pada file individual, Git mengikuti pendekatan terdistribusi. Dalam arsitektur terdistribusi, setiap pengembang memiliki salinan lokal mereka sendiri dari seluruh repositori pusat, memungkinkan mereka untuk bekerja secara offline, mengakses riwayat revisi lengkap dan percabangan dan penggabungan yang mudah.

2. Performa yang kuat

Percabangan, penggabungan, commit, dll. sangat mudah dan cepat dengan alur kerja Git karena algoritme pengetahuan mendalamnya yang cerdas yang memahami pola akses ke T.


3. Aman

Git menyimpan semua konten file termasuk hubungan antara versi dan direktori, secara kriptografis menggunakan SHA1 sebagai algoritme tagarnya. Setiap perubahan kode yang tidak disengaja atau berbahaya dapat dilacak sepenuhnya.


4. Sumber terbuka

Menjadi open-source, Git gratis, menikmati dukungan komunitas yang baik, terus-menerus diteliti kualitasnya dan didukung dengan banyak dokumentasi dan tutorial untuk pelajar.


5. Rilis lebih cepat

Pengembangan Git yang terdistribusi dan percabangan serta pembuatan fitur baru yang mudah mendorong pengembang untuk membuat perubahan yang lebih sering dalam alur kerja yang gesit

Git - Arsitektur Terdistribusi

Git - Arsitektur Terdistribusi

Praktik terbaik untuk Git

  • Proyek baru? Repositori baru

Masuk akal secara organisasi untuk membuat repo baru untuk setiap proyek baru yang ingin Anda mulai kerjakan. Setelah selesai, dorong ke GitHub.

  • Fitur baru? Berkembang

Sekarang setelah Anda membuat proyek baru, bagaimana dengan membuat beberapa fitur Git baru? Git Branching memungkinkan Anda membuat dan mengelola alur kerja yang terorganisir dalam repo Anda. Anggota tim dapat diberikan berbagai cabang Git yang memungkinkan mereka untuk bekerja secara bersamaan tetapi dengan cara yang terisolasi. Selalu berikan arti pada cabang git Anda sehingga orang lain tahu persis apa yang sedang Anda kerjakan.

  • Mulailah hari Anda dengan tetap terkini

Selalu "rebase" atau dapatkan yang terbaru, versi terbaru dari proyek Anda (master) sebelum Anda mulai mengerjakan fitur yang Anda buat/tetapkan untuk Anda. Anda tidak ingin membuat perubahan pada file usang.

  • Memiliki pos pemeriksaan berkala

Jangan simpan komitmen Anda untuk perubahan besar. Sering-seringlah melakukan perubahan kecil agar kode lebih mudah dipahami untuk Anda dan anggota tim Anda. Mengembalikan dan melacak juga lebih mudah bila perubahannya kecil dan sering.

  • Simpan pekerjaanmu

Seringkali, Anda mungkin menemukan situasi di mana Anda sedang mengerjakan satu cabang Git tetapi Anda tiba-tiba teringat bahwa Anda perlu bekerja di cabang lain tetapi tidak ingin "melakukan" perubahan yang setengah jadi itu. Atau Anda mungkin hanya ingin copy pekerjaan yang bersih. "git simpanan" untuk menyelamatkan. Stashing memungkinkan Anda menyimpan perubahan yang belum selesai di tumpukan tempat Anda dapat kembali kapan saja!

  • Menekan mereka melakukan

Memiliki komitmen yang lebih rendah dalam riwayat Anda memudahkan untuk memantau dan melacak kesalahan Anda. Jika Anda ingin menyimpan riwayat komit yang bersih, ini untuk Anda. Squash dan gabungkan semua komit Anda menjadi satu saat permintaan tarik digabungkan.

  • Pesan komit

Selalu berikan informasi yang jelas dan dapat dimengerti dalam pesan komit Anda. Mulailah dengan menulis ringkasan singkat tentang perubahan Anda, biarkan baris kosong, lalu ikuti dengan deskripsi terperinci tentang perubahan tersebut. Anda tidak ingin riwayat komit Anda berakhir seperti ini :/

pesan git-commit

https://xkcd.com/1296/

  • Jangan ubah sejarah

Setelah Anda melakukan perubahan pada repositori, jangan kembali dan ubah riwayat. Meskipun Git mengizinkan Anda untuk melakukan itu dan menulis ulang sejarah pubik, itu bukanlah praktik yang baik untuk melakukannya. Baik untuk Anda maupun tim Anda.

  • Terapkan patch Git

Saat Anda tidak memiliki akses tulis ke repositori tetapi Anda masih ingin memperbaiki bug – terapkan tambalan Git. Selalu ingat untuk mengkloning repositori master dan kemudian membuat cabang untuk fitur baru. Saat Anda sudah menyiapkan file .patch, selalu lakukan pratinjau dan lakukan uji coba untuk memeriksa kesalahan. Git apply patch (git apply -R path/file.patch) setelah selesai. JANGAN lupa untuk menguji dan memeriksa

  • Jangan biarkan Pull request terlalu lama

Permintaan "tarik" terbuka dapat menimbulkan konflik cepat atau lambat. Jangan biarkan mereka tanpa pengawasan selama lebih dari 2 hari. Selalu tinjau kode dan jika boleh untuk diterapkan, gabungkan permintaan tarik. Ini tidak hanya akan mempercepat proses pengiriman tetapi juga menghindari konflik kode.

  • Pengorganisasian yang lebih baik dengan alat manajemen proyek

Jika Anda telah menggunakan alat manajemen proyek seperti Redmine, ini adalah praktik yang baik untuk menggunakannya bersama dengan Git untuk dapat mengelola banyak anggota tim dan tugas mereka dengan lebih baik. Membuat cabang Git Anda dengan tugas Redmine sebagai namanya adalah salah satu praktik terbaik Git karena memungkinkan transparansi dan pengorganisasian yang lebih baik.

Alat Manajemen Proyek Git

Tugas dibuat di Redmine

Membuat cabang git

Membuat cabang dengan id dan nama Tugas
  • GitLab CI/CD

Menggunakan alat Continuous Integration/ Continuous Deployment seperti ini memungkinkan Anda untuk menguji dan memeriksa bug dan kesalahan dan memastikan kompatibilitas dengan standar kode. Pekerjaan ini dilakukan setelah kode didorong ke server pementasan.

Gitlab CI

GitLab CI/CD daftar pekerjaan

Infografis praktik terbaik Git