Merhaba arkadaşlar subversion hakkında türkçe yazılmış çok fazla kaynak olmamasından dolayı bu yazımı türkçe yazdığımı belirtmek istiyorum. Halen ingilizce dilinin artık global bir dil olduğunun bazı kişiler tarafından kabul edilmeyişide ayrı bir tartışma konusu bence.
Neyse hemen anlatmaya başlıyorum. Aslında kişisel olarak bir projeyi tek başıma yapıyorsam bunda daha başarılı olabildiğimi düşünüyordum ancak bazı nedenlerden dolayı anladım ki atasözümüz olan “Bir elin nesi var iki elin sesi” var sözü gerçekten yerinde ve mantıklı söylenmiş bir söz. . Geçenlerde üniversitede grup çalışması yaptıgım samimi arkadaşlar ile bir projeye başlama kararı aldık ve ortak bir çalışma ortamı oluşturmam gerekiyordu. Ortak çalışma ortamı çok şekilde yaratılabilir aslında;
- Subversion
- CVS
- SourceSafe
- Team Foundation Server
- Birkaç duyulmamış sistem daha
Bu sistemler arasında en mantıklı ve uygulanabilirliği açısından rahat olan sistemin subversion olduğunu düşünüyorum. Linux altında çalışmışlığınız var ise bir Subversion (SVN) server kurmak yanlızca 30 saniyenizi alacaktır. Subversion sistemini windows işletim sistemilerinde de kurabiliyoruz ancak tabiki biz linuxumuza kurup rahat ve hızlı çalışmanın tadına varacağız
Ben extra bir server bulamadığımdan dolayı kendi bilgisayarıma Vmware kurup onun üzerindeki sanal makine yardımıyla subversion yayımı yapmaya başladım. Sizinde benim gibi bu aralar imkanlarınız biraz kısıtlı ise vmware tek çözüm gibi görünüyor. Kuruluma geçmeden önce ubuntu distromuzu bilgisayarımıza kuralım bu kısım tamamiyle size ait. (Vmware kullanacaksanız ubuntu server edition tavsiyemdir.)
Şimdi sisteminize yeni bir ubuntu kurulumu var ve üzerinde apache2 sunucusu sorunsuz olarak çalışıyor kabul edelim. Bu aşamadan sonra yapmamız gereken sadece apache2 server a gerekli eklentileri yapıp subversion serveri kullanılabilir hale getirmek.
Subversion server için subversion ve libapache2-svn paketlerini kurmamız gerekli, bunu için
sudo apt-get install subversion libapache2-svn
komutunu kullanarak bu paketleri serverımıza kuruyoruz. Artık SVN modüllerini apache2 serverımızda port 80 ile kullanılabilir hale getirdik. Paketleri yüklediğimizde modüller otomatik olarak aktif hale gelmiş olması ancak biz yinede bi kontrol edelim. Bunun için
sudo a2enmod dav_svn
komutunu kullanıyoruz ve kullanım sonrasında bize “already enabled” gibi bir uyarı gelmesi gerekiyor şu an tam olarak hatırlamıyorum. Şimdide apache2 de bir kaç ayarlama yapmamız gerekiyor.
sudo nano /etc/apache2/mods-enabled/dav_svn.conf
açılan dosyarı konsolda şu şekilde değiştirmemiz gerekiyor. (Genelde satır önlerindeki # işaretini kaldırarak kolaylıkla yapabilirsiniz)
< Location /svn > DAV svn SVNPath /home/svn AuthType Basic AuthName "Subversion Repository - veya repository adı" AuthUserFile /etc/apache2/dav_svn.passwd Require valid-user < / Location >
buradaki /home/svn dizinini kendi repository dizininize göre değiştirebilirsiniz. Aynı kalmasında bir sakınca yok aslında. dizinimizin /home/svn olduğunu varsayarak devam ediyorum.
sudo mkdir /home/svn sudo svnadmin create /home/svn
şimdide apache2 yi bu repository için owner yapmamız gerekiyor.
sudo chown -R www-data /home/svn
repository’ e erişimimizi biraz güvenli hale getirebilmek için bir şifre belirleyelim.
sudo htpasswd -cm /etc/apache2/dav_svn.passwd kullanı_adınız
daha sonra sistem sizden şifrenizi belirlemenizi isteyecektir. Bu aşamadan sonra yapmamız gereken tek şey apache serverimizi yeniden başlatmak.
sudo /etc/init.d/apache2 restart
bu aşamaya kadar kazasız belasız geldiyseniz artık sizin http://sun.ucu.nuz/svn altında bir subversion serverınız var. Tebrikler
İyi Çalışmalar…