Sunday, March 15, 2015

Pengenalan Git

Git adalah distributed revision contol system, the stupid content tracker atau Software Configuration Management (SCM) yang dibuat oleh Linus Torvalds untuk menghandle manajemen kernel Linux karena ketidakpuasannya pada layanan bitkeeper. Git dapat diterapkan untuk mengontrol update file-file kita melalui server private ataupun website yang menyediakan fasilitas hosting git secara gratis atau berbayar. Bitbucket adalah salah satu website yang mempopulerkan git, selain Bitbucket anda bisa mencoba gitorious, gitlab, dan Github. Selain git, contoh SCM lainnya adalah mercurial hg.

Dengan Git, kita bisa mengupdate file-file kita (umumnya berupa source code) antar PC, dimanapun dan kapanpun, selama ada koneksi internet. Bitbucket mirip layanan online file storage seperti Dropbox, Copy dan Drive namun berbasis git. Disini saya akan mencontohkan git untuk manajemen source code, sangat berguna untuk mahasiswa, peneliti, dosen dan programmer, namun dapat diaplikasikan pada semua pekerjaan yang membutuhkan kemudahan manajemen file skrip.

Sistem operasi yang saya pakai adalah Ubuntu (14.04), dan sudah terinstall git (jika belum install dengan : sudo apt-get install git). Misalkan kita mempunyai folder yang berisi file-file kode sumber / script seperti C, Matlab, html ataupun txt. Dengan git kita akan mengontrol revisi pada file pada folder tersebut.
Setting Git
Untuk dapat menggunakan git, kita harus mengeset username dan email sbb:
$ git config --global user.name "Your Name"
$ git config --global user.email "your_email@example.com"
Kemudian, buat folder yang mana file dan subfolder di-dalamnya akan kita kontrol revisinya. (Folder) itulah yang dinamakan repo(sitory).
mkdir /tmp/coba
cd /tmp/coba
Dua perintah diatas untuk membuat folder coba di dalam /tmp, kemudian kita membuat file dengan nama coba.txt
echo "ini adalah file pertama" >> coba.txt
Ok, kita sudah punya satu folder dan file yang akan kita kontrol revisinya. Untuk manajemen file, kita tambahkan file readme.md yang berisi keterangan tentang folder tersebut.
echo "Contoh manajemen revisi file skrip dengan Git dan Bitbucket" >> readme.md
Setelah kita punya file yang akan kita kontrol revisinya, kita buat repo di Bitbucket, anggap kita sudah punya akun Bitbucket, jika belum silakan buat akun Bitbucket. Sceenshot dibawah ini adalah contoh pembuatan repo baru dengan nama coba (.git).


Membuat repo baru di Bitbucket (atas) Github (bawah)
Silakan isi nama repo, misalnya coba, setelah itu klik create repository, maka selanjutnya akan muncul panduan untu meng-git repo local (folder coba) di komputer kita ke repo "coba" di Bitbucket,
echo "# coba" >> README.md
git init
git add ./*
git commit -m "first commit"
git remote add origin https://bitbucket.org/bagustris/coba.git
git push -u origin master
Karena kita sudah membuat readme.md, baris pertama perintah diatas kita skip, kita langsung barus kedua sampai baris terakhir. Masukkan perintah-perintah diatas pada terminal. Baris kedua merupakan perintah untuk memulai mengisiasi git, Baris ketiga adalah menambahkan file-file dalam current directory dan baris keempat menambahkan keterangan terhadap apa yang telah kita lakukan. Untuk mengecek file yang telah ditambahkan pada repo cek dengan "git status". Karena kita baru saja meng-commit pertama kali, maka default messagenya (-m) adalah "first commit". Baris keempat adalah menambahkan (add) repo github ke git kita berikut linknya sebagai remote origin, link github dimana kita meng-host kode-kode kita. Baris terakhir adalah mem-push file-file di komputer kita ke server Github. Kita akan dimintai akun dan password git saat mem-push tersebut. Jika proses push berhasil, akan muncul notifikasi berikut di terminal,
Writing objects: 100% (3/3), 231 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To https://github.com/bagustris/coba.git
 * [new branch]      master -> master
Branch master set up to track remote branch master from origin.
Untuk memverifikasi proses push tersebut berhasil, silakan buka repo baru kita di Bitbucket, disitu akan muncul file-file kita.

Modifikasi, staged.

Ada empat tahapan manajemen file dalam git: Untracked, unmodified, modified, staged.
  • Untracked: Git tidak tahu kalau file tersebut ditelusuri (tracked),
  • Unmodified: Git tahu file tersebut, tapi tidak tahu kalau ada modifikasi.
  • Tracked: modifikasi file ada pada git, tapi git tidak mengetahui modifikasi yang dibuat
  • Staged: perubahan pada file ini diketahui oleh git dan akan di-commit pada commit selanjutnya.
Sumber: Progit
Misalkan kita buat perubahan pada file coba dan kita commit serta push sebagai berikut,
echo "tambahan kedua" >> coba.txt
git commit -am "tambahan kedua"
git push -u origin master
Dengan perintah tersebut kita memodifikasi file coba dan menjadikannya staged. Baris kedua diatas memberi perintah commit dengan menambahkan dan memberi keterangan/komentar (-am) berupa "tambahan kedua". Setelah kita push, hasil modifikasi kita sudah ada di repo Bitbucket. Untuk mengecek status lifecyle dari file kita, ketikkan "git status" di terminal. Untuk melihat semua log, cek dengan "git log".

Bersambung, Git: Clone, push dan pull.
Related Posts Plugin for WordPress, Blogger...