Git lagi

Intro

Sebenarnya sudah banyak situs ataupun blog yang membahas mengenai “GIT” ini, jauh lebih lengkap dan berwarna #halah. Tapi berhubung saya sering lupa, dan beberapa bookmark saya menguap entah kemana maka saya putuskan untuk menulis apa yang saya anggap penting *yng sering kepake maksudnya*

Ilustrasi

Mari kita sedikit berimajinasi terlebih dahulu, *misal* Sule Steven sekarang sedang skripsi. Akhirnya dia sekarang lanjut ke pengerjaan bab 3. Sule Steven sudah mantap dengan apa yang dikerjakannya, datanglah di pagi yang cerah ia ke ruang dosen pembimbing. Setelah bimbingan sekitar 45 menit 23 detik, Sule Steven keluar dengan riang karena telah mendapat beberapa pencerahan dan masukan dari sang dosen. Pulang ke rumah dengan semangat berapi api, Sule Steven merevisi hasil bab 3-nya tidak lupa Sule Steven membackup file-nya terlebih dahulu, dengan nama “bab3-ori.doc”. Setelah hampir 1/3 malam dihabiskan Sule Steven baku hantam dengan bab 3-nya, Sule menge-save dengan nama “bab3-ori-revisi1.doc”. Keesokan harinya, Sule bimbingan lagi, pukul 09:30 dan lagi lagi pak dosen mencorat coret hasil begadang Sule semalam tadi. Pulang bimbingan, istirahat sebentar dan Sule mulai merevisi lagi, baku hantam lagi dengan word editor kesayangannya dan akhirnya beres juga, tak lupa Sule save terlebih dahulu sebelum tidur dengan nama “bab3-ori-revisi2.doc”. Ternyata hari hari berikutnya diisi dengan revisi, revisi dan revisi hingga file terakhirnya pun bernama “bab3-ori-revisi12-semangat.doc”. Lalu tetiba sang dosen minta k Sule untuk mengembalikan bab 3-nya ke 3 hari yang lalu dan memberi sedikit comment, begitu seterusnya @_@ Efektifkah ?
Oke oke, mungkin ilustrasinya sedikit *klaim* berantakan, coba lihat gambar di bawah ini. 😀

revisi looping 😀

Keuntungan

Lalu apa keuntungan dari git itu sendiri ? Menurut narasumber , git itu “Makes your life easier” mari kita sama sama ucapkan banyak terima kasih ke Bapak Linus Trovald #ThanksBeratsPak. Cuman itu ? Bisa lebih spesifik masbro ? Oke oke, tenang. Ini ada beberapa keuntungan dari menggunakan git

  1. Data redundancy and replication — Since there are multiple full repositories on multiple machines (instead of one central repository), the risk of project loss due to server failure or some other catastrophe is much lower.
  2. High availability — Server down? Network down? No problem. Work in your repo (commit, view history, branch, etc) to your heart’s content. Try that with Subversion!
  3. Only one .git directory per repository — Versus a .svn in every subfolder, which, as you may know from painful personal experience, can lead to problems.
  4. Superior disk utilization and network performance
  5. Properties such as ignores are much easier to manage than in Subversion
  6. Collaboration Friendly — Git makes it easy to collaborate on projects with groups of contributors. And with great services like Github, Git’s collaboration friendliness is even further magnified.
  7. Not just for code! — Git is great for all sorts of projects, not just hacking code. For example, all of Gitology’s written content is managed with Git, not just it’s code.

Cheatsheet

git config –global user.name “” : untuk mengkonfigurasi nama user
git config –global user.email “<email@domain.com>” : untuk mengkonfigurasi email user
git add path/to/file : untuk menambahkan file ke staging area
git commit -m ‘Pesan’ : untuk mengirimkan file dari staging area ke project history
git status : untuk menampilkan file-file yng modified
git log : untuk menampilkan history commit-an secara full
git log –author=Ahmad –oneline –after={tanggal} : untuk menampilkan history dengan parameter tertentu
git checkout : untuk mengembalikan file to old version / sebelum di edit
git reset –soft commit : untuk undoing commit k versi commitan yng keberapa(terserah), tanpa merubah file modified nya
git reset –hard HEAD : untuk undoing commit versi extreme, file2 yang modified juga ikutan hilang #dooh!
git rm –cached /path/to/file : untuk remove index file dari stage, tanpa meresetnya (undoing git add)
git branch : untuk mengetahui lagi berada di branch mana.

#cmiiw #MelawanLupa
Semoga bermanfaat 😀

Referensi:

http://software.endy.muhardin.com/aplikasi/pemakaian-git-sehari-hari/

Advertisements

Install version control system GUI di ubuntu 13.10

Bagi pengguna sistem operasi Weendows dan version control Subversion mungkin telah mengenal aplikasi Tortoise Svn, sebuah aplikasi GUI yang memudahkan user untuk menggunakan subversion entah itu untuk keperluan add, commit, checkout dll, juga integrasinya dengan windows explorer yang (lagi-lagi) memudahkan user untuk mengetahui file atau folder mana saja yang sudah dimodifikasi ataupun belum karena ada indikatornya yaitu tanda pada file / folder yang berwarna merah atau hijau seperti gambar dibawah ini.

Dan bagi pengguna Linux khususnya Ubuntu serta menggunakan version control mungkin lebih nyaman versioning-nya dengan mengetikkan command di terminal 😀 Tinggal kutak ketik lalu enter, tidak perlu klak klik mouse. Tapi ada beberapa user yang belum terbiasa dengan kondisi kondisi tersebut atau barangkali masih beradaptasi (seperti saya) dengan sistem operasi maupun version control-nya, mungkin *jreng jreng* RabbitVcs bisa menjadi alternatif untuk memudahkan proses add, commit, update projek kita ke server dengan tampilan dan fitur fitur yang menyerupai dengan TortoiseSvn di Weendows.

Lalu apa itu RabbitVcs? Kalo liat dari situs nya langsung, “RabbitVcs is a set of graphical tools written to provide simple and straightforward access to the version control systems you use. We provide multiple clients and extensions designed to give you a uniform experience no matter what development tools you use”. Sudah jelas kan pengertian dan kegunaannya. RabbitVcs dapat diunduh langsung di : http://wiki.rabbitvcs.org/wiki/download atau bisa juga diinstall melalui terminal dengan mengetikkan beberapa command :

$ sudo add-apt-repository ppa:rabbitvcs/ppa
$ sudo apt-get update

ada beberapa pilihan untuk installasi nya, diantaranya : rabbitvcs-cli,rabbitvcs-gedit, rabbitvcs-nautilus3 ,rabbitvcs-core,rabbitvcs-nautilus,rabbitvcs-thunar. Install sesuai kebutuhan, karena saya hanya membutuhkan untuk menampilkan indikator di file explorer dan juga di terminal, maka saya hanya menginstall rabbitvcs-nautilus dan rabbitvcs-cli saja.

$ sudo apt-get install rabbitvcs-core rabbitvcs-nautilus rabbitvcs-cli

Setelah terinstall, maka otomatis file explorer (nautilus) kita terintegrasi dengan Rabbitvcs. Cara penggunaannya cukup mudah, tinggal klik kanan maka akan muncul pilihan dari Rabbitvcs-nya. Daaan Rabbitvcs siap digunakan 😀

Rabbitvcs juga mendukung version control system lainnya, seperti Git. Oia, untuk menggunakan rabbitvcs-cli, tinggal buka terminal lalu tinggal ketikkan rabbitvcs <command>. Contohnya :

$ rabbitvcs log /path/to/file.extension

Semoga bermanfaat and keep learning 😀