Apa itu Subversion?
Apache Subversion atau SVN adalah software kontrol revisi yang pertama kali diinisiasi oleh CollabNet Inc.Programmer yang tiap harinya berkutat dengan source code tentu pernah merasakan bagaimana repotnya jika melakukan kesalahan pada kode yang berujung bencana bagi aplikasi yang sedang dibangun, adanya software kontrol revisi semacam Subversion ini membantu programmer untuk memelihara versi dari tiap – tiap file proyek yang sedang dikerjakannya. Subversion mencatat perubahan isi file, penambahan, penghapusan, dan penggantian nama tiap file. Adanya pencatatan ini memungkinkan seseorang yang menggunakan Subversion untuk melihat runutan perubahan yang dilakukannya, dan jika diperlukan mengembalikan versi yang terdahulu dari proyek yang sedang dikerjakannya. Subversion secara luas digunakan pada banyak proyek – proyek open source seperti: Apache Software Foundation, Free Pascal, FreeBSD, GCC, Django,Ruby, Mono, SourceForge, ExtJS, Tigris.org, PHP dan MediaWiki. Hosting proyek berbasis Subversion juga sudah banyak disediakan seperti: Google Code, BountySource, CodePlex, dan XP-Dev
Penggunaan Subversion dalam tim developer
Karena Subversion adalah software yang multiuser, maka Subversion juga memudahkan kerja tim developer software. Setiap developer dalam sebuah tim, memiliki versi kerja nya masing – masing, setiap anggota tim selesai melakukan pekerjaan, ia akan melakukan “commit” ke server SVN, secara otomatis, perubahan yang ia lakukan tersebut, baik penambahan, perubahan isi file, atau penghapusan file akan dicatat oleh server SVN, dan anggota – anggota tim developer software yang lain dapat mengupdate versi kerjanya dari server SVN untuk mendapatkan versi kerja yang paling mutakhir. Setiap perubahan di SVN server akan digabungkan secara otomatis dengan versi kerja, jika terjadi konflik dalam penggabungan, maka disediakan juga tool untuk melakukan merge. Dengan pengelolaan source code yang seperti ini, maka seluruh tim memiliki versi kerja yang sama.
Fitur lainnya
Selain fitur tersebut diatas, Subversion juga mendukung Branching (duplikasi obyek, file, maupun direktori yang berada dibawah kontrol revisi sehingga modifikasi dapat berjalan paralel di kedua cabang), dan Tagging(Memungkinkan pengguna untuk menandai status/keadaan proyek yang berada dibawah kontrol revisi). Pada dasarnya, ada 2 bagian penting dalam SVN, yaitu SVN Client dan SVN Repository. SVN Client merupakan software yang digunakan user untuk mengakses repository, sedangkan SVN repository sendiri merupakan server yang berisi data-data yang dimanage. Segala perubahan terhadap data di repository dicatat oleh SVN. Dalam menggunakan SVN ini, data dalam repository dapat dicopy ke client agar user dapat mengolah data tersebut secara lokal, biasanya disebut “Checkout”. Kemudian data di lokal tersebut, setelah diolah, dapat dikirim kembali ke repository untuk keperluan version control, dan agar dapat diakses rekan kita, biasanya disebut “Commit”. Mengenai SVN Repository, di internet ada banyak sekali yang menyediakan layanan tersebut, baik yang berbayar maupun yang tidak, tentu dengan fasilitas yang berbeda. Dengan menggunakan layanan tersebut, maka kita tinggal meletakkan data/file yang akan kita buat versioning-nya di repository, kemudian dapat kita akses melalui SVN client di PC kita. Beberapa SVN Hosting yang menyediakan layanan tersebut
Penerapan
Pada banyak sistem Unix, Subversion telah terintegrasi dan dan dapat dengan mudah diinstall serta diakses menggunakan command “svn” melalui konsol Unix. Pada sistem Windows software client yang paling populer digunakan adalah Tortoise SVN. Tortoise SVN mengintegrasikan dirinya dengan explorer sehingga memudahkan penggunaan. Server Subversion sendiri tersedia untuk platform AIX, Debian Linux, Fedora Linux, FreeBSD, HP-UX, NetBSD, OpenBSD, Mac OS X, Red Hat Linux, Solaris, SUSE Linux, Ubuntu Linux dan juga Windows.
Tidak ada komentar:
Posting Komentar