Kendali versi

Kendali versi 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 kendali versi (VCS) umumnya merupakan aplikasi mandiri, namun ada pula yang berfungsi sebagai sub modul dalam berbagai jenis aplikasi seperti pengolah kata, lembar kerja (spreadsheet), dan berbagai macam sistem manajemen konten. Integrasi terhadap kendali revisi ini merupakan salah satu fitur penting yang dimiliki perangkat lunak wiki seperti. Dalam wiki, keberadaan kendali 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 mengendalikan 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.