GNU/Linux >> Belajar Linux >  >> Linux

Apa Perbedaan Antara Git Switch dan Checkout?

Saat Anda mulai belajar dan menggunakan Git, Anda akan menemukan situasi umum di mana Anda harus berpindah cabang.

Dan di sini, hal-hal bisa menjadi sedikit membingungkan bagi Anda. Jika Anda mencari cara berpindah cabang di git, Anda akan menemukan beberapa contoh di mana git switch digunakan dan beberapa contoh di mana git checkout digunakan.

Perintah Git checkout Perintah sakelar Git Deskripsi
git checkout my-branch git switch my-branch Beralih ke cabang my-branch
git checkout -b my-branch git switch -c my-branch Buat dan alihkan ke cabang saya

Jadi, apa perbedaan antara git switch dan git checkout? Jika keduanya dapat digunakan untuk berpindah cabang, mengapa ada dua perintah untuk tujuan yang sama? Biar saya jelaskan.

Perbedaan antara git checkout dan git switch

Inilah masalahnya. Git checkout adalah perintah lama yang digunakan untuk membuat dan mengganti cabang. Itu juga dapat digunakan untuk memulihkan perubahan dari komit tertentu. Tetapi git checkout melakukan lebih dari itu. Ini memungkinkan Anda untuk menyalin file dari cabang mana pun atau melakukan komit langsung ke pohon kerja Anda tanpa berpindah cabang.

Seperti yang dicatat Dan Fabulich, git checkout melakukan tiga hal:

  • berpindah cabang
  • menyalin file dari panggung ke pohon kerja
  • menyalin file dari tree-ish ke working tree

Jika Anda tidak memahaminya, tidak apa-apa. Ingatlah bahwa git checkout melakukan lebih dari sekadar perpindahan cabang dan fungsionalitas tambahan mulai membuat kebingungan.

Dan karenanya, dengan dirilisnya Git 2.23, pengembangnya memperkenalkan dua perintah git baru:git switch dan git restore .

Ide di balik langkah ini adalah untuk membiarkan orang menggunakan git switch untuk berpindah cabang dan git restore untuk membatalkan perubahan dari komit. Pada saat yang sama git checkout tetap ada untuk opsi lanjutan untuk menangani tree-ish.

Yang mana yang harus Anda gunakan? Git checkout atau git switch?

Jika Anda harus berpindah cabang, gunakan perintah git switch alih-alih git checkout. Mengapa? Karena itu dibuat untuk tugas khusus ini. Untuk pengguna baru Git, lebih mudah untuk mengingat git switch adalah untuk berpindah cabang, git restore adalah untuk memulihkan komit.

Jadi, ini adalah praktik yang baik untuk mengganti pembuatan cabang dan fungsionalitas pengalihan git checkout dengan perintah git switch.

Saya harap Anda jelas tentang menggunakan git switch dan checkout sekarang. Jika Anda memiliki sesuatu untuk ditambahkan, silakan gunakan bagian komentar.


Linux
  1. Perbedaan Antara [[ $a ==Z* ]] Dan [ $a ==Z* ]?

  2. Apa perbedaan antara Redhat dan centOS?

  3. Apa perbedaan antara mutex dan bagian kritis?

  1. Apa perbedaan antara utas NPTL dan POSIX?

  2. Apa perbedaan antara adduser dan useradd?

  3. Apa perbedaan antara `su -` dan` su --login`?

  1. Apa perbedaan antara insmod dan modprobe

  2. Apa perbedaan antara strtok_r dan strtok_s di C?

  3. Apa perbedaan antara fsck dan e2fsck?