Ini adalah seri lanjutan dari artikel sebelumnya yang membahas tentang perintah-perintah Git yang tidak boleh terlewatkan. Selain perintah dasar yang telah disebutkan di seri sebelumnya, ada beberapa perintah Git lain yang juga penting dan sering digunakan oleh software developer. Berikut adalah beberapa di antaranya:
11. git log
Perintah ini digunakan untuk melihat riwayat commit dalam repositori. Dengan git log, kita dapat melihat daftar commit yang telah dilakukan beserta pesan, penulis, dan tanggalnya.
git logUntuk tampilan yang lebih singkat:
git log --oneline12. git diff
Perintah ini digunakan untuk melihat perbedaan antara berbagai commit, branch, atau working directory. Ini sangat berguna untuk memahami perubahan yang telah dilakukan.
git diffatau
git diff <commit-id-atau-branch>13. git stash
Perintah ini digunakan untuk menyimpan sementara perubahan yang belum di-commit. Ini berguna saat kita perlu berpindah ke branch lain tetapi ingin menyimpan pekerjaan kita saat ini tanpa melakukan commit.
git stashUntuk melihat daftar stashes:
git stash listUntuk mengaplikasikan kembali perubahan yang di-stash:
git stash applyPerintah ini akan menerapkan stash terbaru ke working directory tanpa menghapus stash dari daftar. Jika ingin menghapus stash setelah menerapkannya, kita bisa menggunakan:
git stash pop14. git remote
Perintah ini digunakan untuk mengelola remote repository. Kita bisa menambahkan, menghapus, mengubah, atau menampilkan remote repository yang terhubung dengan repositori lokal.
git remote -vuntuk melihat remote repository yang ada, atau
git remote add <nama-remote> <url-repo>untuk menambahkan remote repository baru.
git remote set-url <nama-remote> <url-baru>untuk mengubah url remote repository.
15. git fetch
Perintah ini digunakan untuk mengambil perubahan dari remote repository tanpa langsung menggabungkannya dengan branch lokal. Ini memungkinkan kita untuk memeriksa perubahan terlebih dahulu.
git fetch <remote>16. git reset
Perintah ini digunakan untuk mereset HEAD branch ke state sebelumnya. Ini bisa digunakan untuk membatalkan commit atau perubahan yang tidak diinginkan.
git reset --hard <commit-id>atau untuk mengatur ulang staging area:
git reset <commit-id>git reset dapat digunakan dengan berbagai opsi yang menentukan bagaimana reset mempengaruhi working directory dan staging area. Secara default, git reset (tanpa opsi apa pun) sama dengan git reset --mixed.
git reset --soft <commit>:
- Mereset branch saat ini ke commit yang ditentukan.
- Tidak mengubah staging area atau working directory. Perubahan tetap ada di indeks dan working directory seperti semula.
- Umumnya digunakan ketika kita ingin membatalkan commit tetapi tetap menyimpan perubahan di staging area untuk commit baru.
git reset --mixed <commit> (default):
- Mereset branch saat ini ke commit yang ditentukan.
- Mengatur ulang staging area agar sesuai dengan commit yang ditentukan.
- Tidak mengubah working directory. Perubahan tetap ada di working directory sebagai perubahan yang belum di-commit.
- Ini berguna ketika kita ingin membatalkan perubahan di staging area tetapi tetap menyimpannya di working directory.
git reset --hard <commit>:
- Mereset branch saat ini ke commit yang ditentukan.
- Mengatur ulang staging area agar sesuai dengan commit yang ditentukan.
- Mengatur ulang working directory sesuai dengan commit yang ditentukan, sehingga semua perubahan di working directory dan staging area akan dihapus.
- Ini akan menghapus semua perubahan yang belum di-commit, membuat working directory dan indeks sesuai dengan commit yang ditentukan.
Summary
git reset --softmenyimpan perubahan di staging area.git reset --mixed(default) mereset perubahan ke working directory.git reset --hardmenghapus semua perubahan di staging area dan working directory.
Gunakan git reset --hard dengan hati-hati, karena dapat menyebabkan kehilangan data jika perubahan belum di-commit atau disimpan di tempat lain.
