Subversi , juga dikenal sebagai SVN, sistem kontrol versi sumber terbuka. Ini digunakan untuk melacak file sumber dan dokumen.
Setiap kali Anda mengubah, menambah atau menghapus file atau folder yang Anda kontrol dengan Subversion, Anda melakukan perubahan ini ke repositori Subversion, yang membuat revisi baru di repositori yang mencerminkan perubahan ini.
Kapan pun Anda membutuhkan, Anda selalu dapat kembali, melihat, dan mendapatkan isi revisi sebelumnya.
Posting ini membantu Anda menyiapkan SVN di Debian 9 / Ubuntu 16.04 .
Beralih ke pengguna root.
su -
ATAU
sudo su -
Instal server web
mari kita perbarui indeks repositori terlebih dahulu.
apt-get update
Di sini, kita akan menginstal server Apache untuk mengakses server SVN menggunakan URL HTTP.
apt-get install -y apache2 apache2-utils
Izinkan Apache melalui firewall (Jika berlaku).
ufw allow 80/tcp ufw reload
Verifikasi layanan Apache dengan mengunjungi URL di bawah ini.
http://your.ip.add.ressAnda harus mendapatkan halaman default Apache2.
Instal Subversion
Setelah Apache terinstal, Anda dapat mengeluarkan perintah berikut untuk menginstal subversi Apache.
### debian ### apt-get install -y subversion subversion-tools libapache2-mod-svn ### ubuntu ### apt-get install -y subversion subversion-tools libapache2-mod-svn libapache2-svn
Konfigurasikan Subversi
Setelah instalasi selesai, buat repositori sesuai kebutuhan Anda. Di sini, saya membuat /var/lib/svn sebagai basis dan akan membuat repositori “testrepo” di dalamnya.
mkdir /var/lib/svn
Buat repositori bernama “testrepo”
svnadmin create /var/lib/svn/testrepo
Ubah izin repositori untuk mengizinkan Apache membaca dan menulis data ke dalamnya.
chown -R www-data:www-data /var/lib/svn/testrepo/
Konfigurasikan virtual host di Apache.
nano /etc/apache2/mods-enabled/dav_svn.conf
Tempatkan konten berikut.
<Location /svn> DAV svn SVNParentPath /var/lib/svn AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/apache2/dav_svn.passwd Require valid-user </Location>
Buat file kata sandi untuk pengguna. Ganti raj dengan nama pengguna Anda .
htpasswd -cm /etc/apache2/dav_svn.passwd raj
Mulai ulang server apache.
systemctl restart apache2
Uji Subversi
Akses SVN menggunakan browser , URL akan menjadi
http://your-ip-add.ress/svn/testrepoAnda akan diminta untuk memasukkan nama pengguna dan kata sandi.
Setelah berhasil login, konten akan terdaftar seperti di bawah ini.
Buat direktori bernama “checkout”
mkdir checkout
Periksa file yang terdapat dalam repositori ke direktori pengujian. Ganti raj dengan nama pengguna Anda .
svn checkout http://192.168.1.10/svn/testrepo --username raj checkout/
Outputnya akan seperti di bawah ini.
Authentication realm: <http://192.168.1.10:80> Subversion Repository Password for 'raj': **** <-- Enter Password ----------------------------------------------------------------------- ATTENTION! Your password for authentication realm: <http://192.168.1.10:80> Subversion Repository can only be stored to disk unencrypted! You are advised to configure your system so that Subversion can store passwords encrypted, if possible. See the documentation for details. You can avoid future appearances of this warning by setting the value of the 'store-plaintext-passwords' option to either 'yes' or 'no' in '/root/.subversion/servers'. ----------------------------------------------------------------------- Store password unencrypted (yes/no)? yes <-- Store Password Checked out revision 0.
Buat file pengujian untuk dikomit pada repositori testrepo.
cd checkout/ touch checkout1.txt touch checkout2.txt
Tambahkan file yang dibuat tersebut untuk dikomit.
svn add checkout1.txt checkout2.txt
Keluaran:
A checkout1.txt A checkout2.txt
Komit file yang ditambahkan. Anda dapat menyebutkan pesan komit dengan tanda -m.
svn commit -m 'First Revision'
Keluaran:
Adding checkout1.txt Adding checkout2.txt Transmitting file data .. Committed revision 1.
Anda dapat melihat file yang dikomit di browser.
Itu saja. Anda dapat menggunakan klien SVN seperti TortoiseSVN untuk windows dan Rapidsvn untuk Linux.