Setelah lama tidak menulis kembali di blog ini, kali ini aku akan share sedikit soal linux server. Sebenarnya hal ini mungkin udah biasa bagi kebanyakan System Administrator, yaitu Subversion Server.
Subversion server adalah aplikasi yangbertujuan untuk mendukung manajemen file baik berupa source code, dokumen dan lain-lain. Aku buat contoh kasusnya, ada sebuah proyek dimana banyak programmer terlibat, dan beberapa orang mengakses file project yang sama. Nah misalkan seorang programmer akan mengubah sebuah file, pasti akan mempengaruhi pekerjaan programmer lain. Itulah sebabnya perlu ada versioning dari file yang dibuat, supaya setiap perubahan bisa ditrack dan dimanage versinya.
Untuk itulah ada Subversion. Subversion memiliki fungsi menyimpan project atau repository dan mencatat perubahan.
Aku tidak akan membahas lebih dalam mengenai fungsinya, sesuai judulnya aku akan lebih banyak membahas mengenai instalasi nya.
Kali ini instalasi akan dilakukan pada mesin Linux Ubuntu, dengan Subversion 1.4.6 dan web server Lampp(dalam hal ini saya menggunakan Xampp).
Aku asumsikan Xampp sudah diinstal di ubuntu nya. Jadi langsung saja ke instalasi SVN nya…
1. Install SVN
As usual pake gaya ubuntu yang langsung install dari repository nya di Internet.
$ apt-get install subversion
2. Create Repository
Seperti biasa repository dapat dibuat di /var/ atau /home, kali ini saya kan membuat repository setiap project di /home/svn
$ mkdir /home/svn
$ mkdir /home/svn/myproject
$ svn create /home/svn/myproject
3. Mengatur koneksi ke SVN server.
SVN server dapat diakses melalui :
- file:/// , yaitu akses secara langsung dari lokal server ke direktori repository
- http://, akses via web server dengan bantuan WebDAV SVN server
- https://, akses via web server juga tapi dengan eksripsi SSL
- svn://, akses dengan protokol SVN
Kali ini yang akan dibahas adalah akses SVN Server via website.
Install modul mod_dav_svn dan mod_authz_svn pada apache yang terdapat pada Lampp server.
a. Copy file mod_dav_svn dan mod_authz_svn.so ke /opt/lampp/modules/. By default xampp tidak memiliki modul yang satu ini, jadi anda harus mengambilnya dari Apache. Kali ini saya pakai cara install apache2 dan libapache2-svn ke ubuntu saya,
$ apt-get install apache2
$apt-get install libapache2-svn
lalu copy file mod_dav_svn dan mod_authz_svn.so
$ cp /usr/lib/apache2/modules/mod_authz_svn.so /opt/lampp/modules/
$ cp /usr/lib/apache2/modules/mod_dav_svn.so /opt/lampp/modules/
kemudian pastikan httpd meload module ini. Buka file /opt/lampp/etc/httpd.conf,
$ vi /opt/lampp/etc/httpd.conf
tambahkan baris berikut ini, pada setelah baris LoadModule ssl_module modules/mod_ssl.so.
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
Kemudian, tambahkan baris berikut ini susudah baris terakhir httpd.conf
# Subversion repositories
<Location /svn/myproject>
DAV svn
SVNPath /home/svn/myproject
AuthType Basic
AuthName “Subversion Repository”
AuthUserFile /etc/subversion/passwd
Require valid-user
</Location>
Dengan skrip di atas, berarti alamat untuk mengakses repository project adalah http://yourhost/svn/myproject. Kemudian restart lampp
$ /opt/lampp/lampp restart
4. Import project yang mau dibuat subversion nya
KIta misalkan project yang sedang dikerjakan semua berada di bawah direktori /opt/lampp/htdocs/testproject.
$ svn import -m "ada deh" /opt/lampp/htdocs/testproject/ http://yourhost/svn/myproject
5. Testing subversion server
Coba lah untuk mengakses subversion anda dari http://localhost/svn/myproject. Anda akan menemukan lagiproject yang sedang berjalan.
Sekian….