Apa itu Version Control

Version control dikenal dengan banyak istilah. Ada yang menyebut Configuration Management Tool, Source Code Management (SCM), atau Source Control. Dalam hal ini, istilah yang digunakan adalah Version Control. Kemampuan  menggunakan  version   control  merupakan   hal   yang langka di kalangan programmer Indonesia. Di bangku kuliah Teknik Informatika,   Ilmu Komputer,  atau  jurusan  lain yang  sejenis,  kita tidak   diajarkan   tentang  version   control.   Bahkan   kita   tidak diberitahu kalau ada perangkat yang disebut version control. Di dunia kerja di Indonesia,  tidak banyak perusahaan yang sudah menggunakan  version   control.   Kalaupun   digunakan,   biasanya programmer   diharapkan   untuk   belajar   secara   otodidak   tanpa pelatihan.
Kalau begitu, kenapa kita harus repot-repot belajar menggunakan version control? Terlepas   dari   kondisi   lokal   di   Indonesia,   perangkat   ini   adalah standar minimal untuk tim programmer di dunia. Di belahan dunia yang  lain,  ribuan programmer terlibat dalam proyek open source, masing-masing   berada   di   negara   yang   berbeda,   tidak   saling mengenal,   tidak   pernah   bertemu   muka,   berkomunikasi   hanya melalui   internet.   Tetapi   mereka   mampu   menghasilkan   aplikasi perangkat lunak yang berkualitas tinggi dalam waktu yang wajar.  Kolaborasi  dengan  skala  besar   seperti   ini  dimungkinkan dengan penggunaan  version   control.  Dengan   jumlah   orang   yang   begitu besar,   sulit   sekali   mengelola   perubahan   source   code   yang dihasilkan   tiap   programmer.   Perubahan   pada   satu   file   sangat mungkin   akan   terhapus   atau   diganti   dengan   file   lain   oleh programmer   lain.   Apabila   terjadi   kesalahan,   sangat   sulit   untuk mengembalikan kondisi aplikasi seperti sebelum terjadi error.  Version   control   dapat  menyediakan   akses   untuk   banyak   orang sekaligus,  mirip dengan sharing  folder  yang biasa kita gunakan. Bedanya dengan sharing folder, version control mampu:

  • mencatat   isi   perubahan   dan   pelaku   perubahan,   dengan demikian kalau ditemukan 'keanehan' pada kode program, kita   dapat   melacak   siapa   yang   membuat   'keanehan' tersebut dan kapan 'keanehan' tersebut muncul
  • menyediakan   fungsi   undo   untuk   tim,   yaitu   dapat mengembalikan   kondisi   kode   program  ke   periode   yang diinginkan   (minggu   kemarin,   sebelum   bugfix,   dan sebagainya)
  • melihat   riwayat   perubahan   kode,   dari   pertama   dibuat, sampai kondisi terakhir saat ini.
  • memungkinkan   pengembangan   kode   secara   paralel, misalnya aplikasi  yang sama dibuat  dalam berbagai  versi secara berbarengan.

Berikut  adalah  version control open source yang tersedia:

  • Concurrent Versioning System (CVS). Version control paling
    terkenal   di   dunia.   Usianya   yang   tua   dan   popularitas
    menyebabkan   banyak   aplikasi   pendukung   yang   tersedia.
    Integrasi dengan CVS biasanya sudah dimasukkan sebagai
    fitur   utama   dalam   editor-editor   kode   program   seperti
    Eclipse, Netbeans, dan sebagainya.
  • Subversion.  Aplikasi  version  control   yang  dibuat   dengan
    tujuan untuk menggantikan CVS.
    sumber : konsep dan penggunaan subversion oleh endy muhardin

1 komentar: (+add yours?)

Udut mengatakan...

thanks for sharing ... really helpful

Posting Komentar