Tips Memakai Git Yang Bisa Bikin Kamu Jadi Developer Panutan di Kantor

Nico Prananta
Hyperjump Tech
Published in
6 min readJan 10, 2021

--

Git Logo
git logo

Jaman sekarang hampir semua developer menggunakan Git untuk version control. Semenjak 15 tahun lalu dibuat oleh Linus Torvalds, Git sudah menjadi pilihan utama dalam pengembangan software, mengalahkan Subversion (SVN) dan Mercurial yang sempat populer sebelum Git. Perusahaan-perusahaan yang bisnisnya menjual layanan berbasis Git pun banyak yang meraup keuntungan sangat besar seperti GitHub yang diakusisi Microsoft dengan harga 7.5 milyar USD.🤯

Git adalah aplikasi command line interface (CLI). Dan seperti aplikasi CLI lainnya, ada banyak perintah (command), opsi, dan argumen yang dapat digunakan di Git. Biasanya developer hanya mengingat beberapa perintah yang digunakan setiap hari seperti git init , git add , git checkout , git pull , git push , git reset , git commit , git stash , dan git log . Di artikel kali ini, saya akan menyajikan beberapa perintah Git yang saya jamin (mungkin sih 😅) banyak developer yang belum tahu namun cukup berguna.

#1 Tutorial Resmi dari Git tentang menggunakan Git secara minimal

git help everyday . Dengan menjalankan perintah ini, developer dapat belajar dari panduan resmi tentang beberapa perintah Git yang umum digunakan oleh developer sebagai developer individual, developer yang bekerja di dalam tim (Participant), developer yang berperan sebagai integrator dan developer yang bertugas mengatur administrasi repositori.

Isi panduan ini saya rasa sangat berguna bukan hanya buat yang baru belajar Git, tapi untuk developer yang sudah lama menggunakan Git juga.

git help everyday
Output dari git help everyday

#2 Pindah ke cabang (branch) sebelumnya

git checkout - . Perintah ini mirip seperti perintah untuk kembali ke direktori sebelumnya di Bash: cd -

checkout previous git branch

#3 Auto correct perintah Git

git config --global help.autocorrect 10 . Dengan memasang konfigurasi help.autocorrect ini, Git akan secara otomatis menjalankan perintah yang benar apabila developer menjalankan perintah yang tidak tepat karena salah ketik. Angka 10 di perintah tersebut adalah jeda waktu yang digunakan Git sebelum menjalankan perintah yang dikiranya benar. 10 berarti 1 detik, 20 berarti 2 detik, dan seterusnya. Jeda waktu tersebut berguna apabila developer ingin membatalkan perintah yang akan dijalankan oleh Git.

#4 Simpan cabang dalam format zip

git archive --output <path_to_output>.zip <branch_name> . Dengan perintah ini, developer dapat menyimpan semua file di sebuah cabang dalam format zip atau tarball tergantung extension output yang digunakan: .zip atau .tar.gz .

#5 Lihat sebuah file di sebuah cabang

git show <branch>:<path_to_file> . Dengan menjalankan perintah tersebut, kita dapat melihat isi file di cabang lain. Misalnya, untuk melihat isi file bernama README.md di cabang main , kita dapat menjalankan perintah git show main:README.md . Apabila file yang ingin dilihat ada di dalam direktori, kita tinggal menggunakan path ke file tersebut, misalnya git show main:src/index.js

#6 Push sekali ke beberapa repositori remote

Push Once, Back Up Everywhere

Umumnya saat developer menjalankan perintah git push origin main , cabang main di komputer developer tersebut akan di upload ke sebuah repositori di komputer lain, misalnya di GitHub, tergantung alamat URL yang diset oleh developer tersebut.

Tapi sebenarnya repositori remote tidak harus hanya satu URL. Sebuah repositori remote, misalnya yang namanya origin , dapat memiliki beberapa URL dengan cara sebagai berikut.

  1. Jalankan git remote -v untuk mendapatkan URL repositori remote yang sudah ada.
  2. Jalankan git remote set-url --add --push origin <remote_url_1> . Masukkan URL remote yang di dapat dari perintah no. 1 ke <remote_url_1> . Misalnya, git remote set-url --add --push origin git@github.com:hyperjumptech/beda.git
  3. Jalankan git remote set-url --add --push origin <remote_url_2> . Masukkan URL remote kedua ke <remote_url_2> .
  4. Ulangi lagi langkah ketiga untuk URL remote lain yang ingin ditambahkan.

Setelah menjalankan langkah-langkah di atas, setiap menjalankan perintah git push origin main , Git akan secara otomatis mengepush cabang main ke setiap repositori remote yang sudah diset untuk origin.

Trik ini sangat berguna apabila kita ingin secara mudah membuat beberapa backup untuk repositori proyek kita. Untuk mengurangi risiko kehilangan data, kita dapat menyimpan repositori di beberapa layanan seperti GitHub, Gitlab, dan BitBucket secara bersamaan. Push Once, Back Up Everywhere™.

#7 Menggunakan beberapa cabang secara bersamaan

git worktree

Ada kalanya saat kita sedang mengerjakan suatu fitur, misalnya di cabang feature/social-login , kita perlu memperbaiki bug yang ada di cabang lain misalnya di cabang main . Terkadang cukup repot untuk pindah cabang karena mungkin ada beberapa file yang belum dicommit, atau mungkin file tersebut tidak perlu dicommit namun dibutuhkan saat proses pengembangan.

Untuk itu kita perlu jalankan git stash terlebih dahulu atau mengcommit semua perubahan sebelum pindah ke cabang lain. Atau lebih ekstrem lagi kita bisa juga mengclone repositori tersebut ke direktori lain supaya tidak perlu pindah-pindah cabang.

Dengan menggunakan git worktree , kita tidak perlu melakukan hal-hal di atas. Menambahkan sebuah worktree itu seperti melakukan clone tapi tanpa menduplikasi semua file.

Perintahnya adalah git worktree add -b <new_branch> <path_to_new_directory> <base_branch> . Misalnya, perintah git worktree add -b hotfix/fix-bug ../tmp-hot-fix main , akan membuat worktree baru di directori ../tmp-hot-fix dan sebuah cabang baru dengan nama hotfix/fix-bug berdasarkan cabang main .

Setelah menjalankan perintah tersebut, kita mempunyai dua worktree dimana kita dapat melakukan perubahan dan menambahkan commit secara paralel di masing-masing cabang. Bila telah selesai memperbaiki bug di cabang hotfix/fix-bug di direktori ../tmp-hot-fix , kita bisa menggabungkannya (merge) ke cabang main , lalu menghapus worktree tersebut dengan cara git worktree remove ../tmp-hot-fix . Akhirnya kita dapat melanjutkan pekerjaan di cabang feature/social-login .

Membuat worktree baru di git
Bekerja di cabang baru di worktree berbeda

#8 Perintah-perintah tambahan di git-extras

Dengan menginstal git-extras, kita dapat menggunakan perintah-perintah tambahan yang memudahkan penggunaan Git. Di Mac, instalasi dapat menggunakan Homebrew: brew install git-extras .

Ada banyak perintah-perintah tambahan di git-extras, namun beberapa yang saya suka di antaranya adalah git obliterate untuk menghapus sebuah file dari repositori termasuk dari semua commit sebelumnya, git pr untuk mengambil Pull Request dari GitHub, git standup untuk melihat apa yang salah satu penulis (author) sudah lakukan dalam waktu tertentu, dan masih banyak lagi.

Bagaimana? Apakah ada perintah baru yang kalian pelajari dari artikel ini? Apakah kalian tahu trik Git lain yang berguna? Ditunggu komen-komennya ya!

Hyperjump Update!

We just launched our free and open source synthetic monitoring tool called Monika on Product Hunt! Your review and upvote are greatly appreciated! 🤝

Hyperjump is an open-source-first company providing engineering excellence service. We aim to build and commercialize open-source tools to help companies streamline, simplify, and secure the most important aspects of its modern DevOps practices.

--

--