Ketika kamu baru belajar dan menggunakan git
, pasti sering ketemu situasi
di mana kamu harus gonti-ganti branch.
Di sini bisa bikin agak bingung buat kamu. Ketika kamu mencari tutorial cara
pindah branch di git
, pasti bakal ketemu beberapa contoh yang menggunakan
git switch
dan ada juga beberapa tutorial yang menggunakan git checkout
.
Jadi, apa sih bedanya antara git switch
sama git checkout
?
Dua-duanya bisa digunakan untuk pindah branch. Tapi memangnya harus ada dua perintah yang sama untuk melakukan satu hal?
Oke, di artikel ini, saya akan menjelaskan perbedaan dari kedua perintah tersebut.
Perbedaan git switch
dengan git checkout
Jadi git checkout
itu adalah perintah lama yang biasanya digunakan untuk
membuat dan berpindah ke cabang tertentu. Tapi tau nggak? git checkout
itu
bisa melakukan banyak hal lain lho! Misalnya, nge-restore perubahan dari
commit tertentu. Atau bahkan, bikin kamu bisa langsung nyalin file dari
branch atau commit mana aja ke working tree-mu tanpa harus
pindah-pindah cabang. Keren, kan?
Seperti yang diceritakan dalam artikelnya Dan Fabulich, sebenarnya git checkout
dapat digunakan untuk melakukan tiga hal ini.
- pindah branch
- copy file dari stage ke working tree
- copy file dari suatu branch ke working tree
Kalo kamu belum paham, tenang aja. Ingat-ingat saja kalau git checkout
tidak
cuma digunakan untuk berganti cabang, tapi juga fitur lainnya yang bisa bikin
kita bingung.
Oleh karena itu, developer git
membuat dua perintah baru di rilis 2.23
yaitu git switch
dan git restore
.
git switch
digunakan untuk gonta-ganti branch dan git restore
untuk undo
perubahan dari sebuah commit. git checkout
tetap bisa digunakan seperti
biasa.
Jadi, mana yang harus kita gunakan?
Kalau kamu hanya ingin pindah antar branch, saya sarankan untuk menggunakan
git switch
daripada git checkout
. Kenapa? Ya, karena perintah itu memang
dibuat spesial untuk pindah-pindah branch. Jadi, untuk user git
pemula
lebih gampang mengingatnya, git switch
untuk gonta-ganti branch dan git restore
untuk mengembalikan commit.
Jadi, lebih bagus kalau kamu membiasakan menggunakan git switch
untuk pindah
branch daripada git checkout
.