Published Jul 11, 2020 by afif alfiano
Selamat Sore. Bagaimana kabarmu hari ini? Semoga selalu diberikan kesehatan dan semangat yang tak pernah padam. Pernahkah kamu berkolaborasi dengan orang lain? Bagaimana cara memanajemen project yang dikerjakan? Apakah setiap ada perubahan file harus melakukan save as? atau lebih parahnya harus saling kirim file setiap ada perubahan? Tentu hal ini sangat tidak efisien.
Maka, pada kesempatan kali ini saya ingin berbagi pengetahuan tentang git. Apa itu git? git adalah sebuah version control system di mana kita mendapatkan kemudahan dalam memanjamen sebuah project atau file. Jadi tidak perlu pusing-pusing mikirin bagaimana membedakan antara file yang lama dengan yang baru. Karena ada riwayat perubahan dan kita bisa selalu mendapatkan file yang paling update. Saya sarankan teman-teman untuk membaca manual booknya yang tentu lebih lengkap.
Pastika teman-teman sudah menginstall command line git ya, kalau di windows bisa pakai gitbash kalau di linux atau mac bisa tinggal install gitnya lewat terminal.
Sebelumnya saya telah membuat repository di github ya, jadi biar keliatan perubahannya seperti apa. Tapi repositorynya masih kosong dan tidak ada file readme dari github.
Berikut ini 10 perintah git yang wajib teman-teman ketahui untuk memudahkan proses development suatu project.
Supaya suatu project dapat menjalankan versioning control system maka kita perlu menginisasi suatu repository atau folder local dengan cara menjalankan perintah git init.
Ketika terdapat suatu perubahan di dalam project maka file tersebut akan masuk ke dalam unstaging area. Kita perlu memindahkan file dari unstage area ke stage area. Tujuannya agar perubahan sudah tersimpan di staging area. Kita bisa menjalankan perintah git add namafiles atau git add . , kalau saya cenderung biasa menggunakan git add . supaya tidak ada yang terlewat untuk masuk ke staging area.
Git commit berfungsi untuk menyimpan segala perubahan kita di dalam local. Jadi misalkan kita ingin berpindah branch atau pull atau merge suatu repository, kita tidak perlu takut akan hilangnya file perubahan kita. Tinggal jalankan git commit atau git commit -m “name commit”. Nah bedanya apa dengan git commit biasa? Jadi kalau git commit saja kita bisa menambahkan banyak deskripsi sedangkan git commit -m “name commit” itu hanya sebuah shortcut supaya lebih cepat dalam melakukan commit.
Selanjutnya kita tinggal mengunggah project kita ke github. Nah di sini ketika pertama kali kita buat repository di github maka akan terdapat tampilan seperti berikut ini. Dengan syarat tidak memilih untuk inisasi file README.md
Karena kita sudah punya folder learn-git di local maka kita pilih metode untuk push an existing repository from the command line. Tinggal copy paste perintah tersebut dan jalankan di project kita. Kemudian kita cek dengan git remote -v. Untuk nama remotenya ini bisa bebas ya, bisa dengan origin, projectSaya atau yang lainnya. Tapi umumnya menggunakan origin.
Kemudian setelah repository github sudah kita remote, langkah selanjutnya adalah melakukan git push yang artinya mengungah project atau file kita ke dalam github. Karena baru pertama kali mengunggah project ini maka jalankan perintah git push origin master -u.
Kemudian kita cek repository yang kita remote di github.
Oke berhasil ya…
Misalkan nih, kita tidak ingin merubah file di branch master karena mungkin takut terjadi error atau lainnya. Oh iya jadi inget, tolong ya jangan pernah melakukan perubahan file di branch master, karena itu sangat membahayakan dan bisa mengakibatkan kegagalan di production. Kembali ke topik awal, ketika ingin ganti branch tinggal jalankan git branch namabranch atau bisa dengan cara cepat yaitu membuat branch baru dan langsung berpindah. Bisa menggunakan perintah git checkout -b namabranch
Oke, keliatan ya perbedaannya. Terutama pada branch yang awalnya master menjadi revisi1.
Saya membuat perubahan file Todolist.md seperti ini di branch revisi1
Jangan lupa untuk melakukan git add, git commit dan git push ke branch terbaru ya.
Kalau saya mau kembali ke branch master bagaimana? Oke, simple aja tinggal jalankan perintah git checkout namabranch. Perlu teman-teman ingat ya, bisa jadi perubahan file yang ada di branch misal revisi1 tidak akan ada di branch master. Karena memang rumahnya sudah berbeda. Mari kita cek bersama-sama.
Yap, sudah berubah dan mari kita cek file Todolist.md
Ternyata perubahan file terbaru tidak ada. Tenang, tidak perlu panik karena perubahan file ada di branch revisi1. Saya ingin menggabungkan file yang ada di branch revisi1 dengan master supaya file terbaru bisa terupdate di master. Bagaimana caranya? Langsung saja ke pembahasan selanjutnya
Git merge adalah menggabungkan satu branch dengan branch lainnya. Artinya setiap perubahan yang ada di branch yang dipilih (misalkan revisi1) akan masuk ke branch utama(misalkan master). Langsung saja jalankan git merge namabranch
Yap, sudah dimerge dan coba kita cek di file Todolist.md
Mantappp, ternyata perubahan terbaru sudah ada di master. Jangan lupa untuk git add, git commit dan git push ya jika sudah tidak ada perubahan.
Dua perintah ini sebenarnya fungsinya berbeda tapi saya coba rangkum jadi satu saja biar lebih simpel. Git fetch ini berfungsi untuk mengambil branch terbaru dari github atau gitlab. Misalkan kita menambah branch baru revisi2 lewat github. Otomatis di local kita belum mendapatkan branch terbaru, maka kita bisa jalankan perintah git fetch
Maka hasilnya di local kita seperti ini
Untuk mengeceknya tinggal kita jalankan git branch atau langsung saja git checkout ke branch terbaru.
Oke, sudah berhasil ya…
Kemudian git pull berfungsi untuk mengambil seluruh merubahan yang ada di suatu branch tertentu sekaligus melakukan merge. Misalkan saya mengedit di branch revisi1 melalui github seperti berikut ini.
Setelah selesai langsung saja commit. Seperti ini hasil perubahannya.
Nah, kita cek di local ternyata perubahan terbaru di branch revisi1 belum ada. Maka kita bisa jalankan perintah git pull origin revisi1. Berikut ini hasilnya
Yap, perubahan terbaru sudah ada di local branch revisi1 kita.
Ini sangat penting mana kala kita bingung ada di branch mana dan perubahan terakhir apa. Maka kita bisa guakan git log ini untuk melihat seluruh history commit yang ada. Langsung saja jalanakan perintah git log.
Sangat lengkap bukan? Mohon maaf itu tadi ada penambah secara manual melalui github, jadi mungkin ada beberapa log di tempat saya yang tidak ada di tempat teman-teman.
Okee, mungkin itu saja yang dapat saya share tentang git ini dan tetap saya sarankan teman-teman untuk membaca dokumentasi resmi dari git itu sendiri.
Kritik dan saran bisa langsung disampaikan lewat email afifalfiano2@gmail.com atau komen di sini ya. Terimkasih 😁
#Git #Github