Pengontrol versi

Pengontrol versi (atau disebut juga pengontrol revisi, atau manajemen kode sumber) merupakan suatu sistem pengelolaan berbagai revisi atas perubahan dari suatu unit informasi baik berupa dokumen, kode sumber, ataupun informasi lainnya yang disimpan dalam media penyimpanan komputer. Setiap entitas perubahan biasanya diidentifikasikan dalam bentuk kode numerik ataupun serangkaian karakter yang diistilahkan sebagai "nomor revisi" atau sederhananya disebut "revisi". Misalnya sekumpulan berkas yang disertakan saat inisialisasi disebut sebagai "revisi 1", kemudian saat terjadi perubahaan atas satu atau beberapa berkas yang ada disebut sebagai "revisi 2", dan seterusnya. Tiap-tiap revisi diasosiasikan dengan stempel waktu serta pengguna yang melakukan perubahan tersebut. Sebuah revisi dapat diperbandingkan, dikembalikan, ataupun digabungkan dengan beberapa jenis berkas yang lain.
Kebutuhan untuk mengelola revisi atas perubahan yang dilakukan pada dasarnya telah lama muncul bersamaan dengan saat kemampuan menulis dikenal oleh manusia, hanya saja kebutuhan tersebut menjadi sangat penting seiring dengan dimulainya era komputasi. "Edisi" yang biasanya terdapat pada buku misalnya, merupakan contoh umum penggambaran atas manajemen revisi pada dunia percetakan.
Sistem pengontrol versi (VCS) umumnya merupakan aplikasi mandiri, namun ada pula yang berfungsi sebagai sub modul dalam berbagai jenis aplikasi seperti pengolah kata (misalnya: OpenOffice Writer, Microsoft Word, KOffice), lembar kerja (spreadsheet) (misalnya: OpenOffice Calc, Microsoft Access), dan berbagai macam sistem manajemen konten. Integrasi terhadap pengontrol revisi ini merupakan salah satu fitur penting yang dimiliki perangkat lunak wiki seperti ((misalnya: MediaWiki), DokuWiki, TWiki, dan lain-lain). Dalam wiki, keberadaan pengontrol revisi memungkinkan pengembalian artikel kembali ke revisi sebelumnya yang sangat penting bagi penulis, ataupun kontributor untuk melacak perubahan yang dilakukan oleh pengguna lainnya, mengoreksi kesalahan, dan mempertahankan wiki terbuka dari vandalisme, ataupun spam.
Perangkat lunak pembantu untuk mengontrol revisi saat ini semakin lebih dikenal karena keberadaannya semakin diperlukan utamanya oleh organisasi yang memiliki tim pengembang, yang melibatkan lebih dari satu orang penulis kode dalam pengerjaan proyek perangkat lunak. Sistem ini utamanya digunakan dalam proses pengembangan perangkat lunak di mana tiap anggota dalam tim pengembang dapat saling melakukan perubahan terhadap sebuah berkas yang sama.

Ikhtisar

Dalam dunia rekayasa perangkat lunak, pengelolaan revisi merupakan bagian dari praktik yang dilakukan untuk menelusuri serta mengontrol setiap perubahan yang dilakukan terhadap kode sumber. Pengembang perangkat lunak terkadang menggunakan pula sistem ini untuk manajemen perubahan atas dokumen ataupun berkas-berkas konfigurasi seperti halnya kode sumber.
Saat sebuah tim mendesain, mengembangkan, dan mendistribusikan sebuah perangkat lunak, adalah hal yang umum beberapa versi dari sebuah perangkat lunak yang sama didistribusikan di beberapa situs yang berbeda, dan terhadap para pengembang perangkat lunak pun, pemanfaatan pengelolaan revisi memungkinkan mereka untuk secara simultan melakukan perbaikan kesalahan, penambahan fitur, serta mendistribusikan versi yang lebih baru.