29Ekim Açık Kaynak açılış Akademik Bilişim 2012 Akademik Bilişim 2012 Uşak all Alt+Ctrl+Delete altlinux Anatolya installer apache apache2 arm AtlantiS autoindex backup bağlantı banana bash bash script belediye betik bind9 boot bootparametre böl cache canlicdrom cdrom centos CHKUSER clonezilla cron crontab çöp denizaltı denizaltı kablo Desteği destek Dil disket dizin şifreleme django djb dkim dns DNS sistemi Domain download drbl dvd e-posta eğitim eklenti EniXma eposta eQmail esxi ev ev almak fake fakemail feed ffmpeg find Firefox fortran free FreeBSD freenas ftp Gazze Genel Gentoo Getgnu.org gezegen git github gitweb Gmail gnupg Gökşin Akdeniz görev Görsel gpg grub grub2 günlük Güvenlik Hacker harddisk hizmet hosting id_rsa imap index indimail indir internet ipv4 ipv6 iso israil İşletim Sistemi kablo kernel kernellogo key komut konsol koruma lampp. httpd lilo link linux liste listeci listmanager live livecd LKD loader login logo mail mail hosting mailman mandriva-tr.org matrax Mint mirror mlmmj modül MTA multisite Müteahhit mx MySQL netinternet Netqmail network nfs nginx ngrok not.py online radyo opendkim openssl önyükleme özgür yazılım panel pano parola paste patch paylaşım pdf perl phpmyadmin pi plan Planet planetplanet plesk pop3 postfix proje proxy putty python qmail qmailtoaster Ras webserver Raspberry pi Raspberry Pi raspi rawdisk recovery remote repository resim resimler rss rsync rsyncd rsyncd etiketi s/qmail Saldırı Samba screen script senronizasyon server servis shell sistem Slackarm slackware Slackware slackware-live slackware.org.tr slackware arşiv httrack truva linux hatıralar slacky.eu sosyal ağ spf sql backup sqlite sqlite3 sqlite3 to wordpress ssh ssh_key ssh-key SSL ssl sertifika subversion sunucu svn swap swapfile syslinux system system images şifreleme takasfile Tatil Tavuk Teneke Kebabı Tenekede Tavuk thunderbird TightVNC tmux Tokat Kebabı tokat kebabı sobası etiketi Trash Trash-cli Truva Linux truvalinux Turkcell tuxweet Türkçe türkiye ubuntu UNIX uzak varnish veri Virtualbox vmware Vodafone vps Vsftp vsftpd Wampp web Web server web Sunucu webserver webserver Akıllı Tahta wget WINN Windows wordpress Wordpress wordpress multisite www xampp Xnest yansı yansılama yansılamak yapıştır yazmak Yedekleme Yemek zulüm

Raspberry-Pi NginX Gitweb

Önceki yazımda basit bir git deposu oluşturmayı göstermiştim.
bu kez gelen ilgili yazıya gelen istek üzerine gitweb yani git web arayüzü üzerinden projelerinizi paylaşmayı gösterelim.

server olarak Raspberry Pi ve Nginx kullandım.
Raspberry Pi üzerinde Minibian kurulu.

Kurulum.
apt-get install nginx git-core

 
apt-get install fcgiwrap spawn-fcgi

 

Öncelikle depo kullanıcısını sisteme ekleyelim.
adduser --home /srv/depo --shell /bin/bash depo

 

depo kullanıcısına geçip git proje depolarını hazırlayalım
su - depo
mkdir git
cd git
mkdir -p proje1.git proje2.git proje3.git
for i in proje1.git proje2.git proje3.git; do cd $i; git init --bare; cd ..; done
Initialized empty Git repository in /srv/depo/git/proje1.git/
Initialized empty Git repository in /srv/depo/git/proje2.git/
Initialized empty Git repository in /srv/depo/git/proje3.git/

 

Proje klasörlerimizin açıklamalarını yazalım.
echo "ilk projem">proje1.git/description
echo "ikinci projem" >proje2.git/description
echo "üçüncü projem" >proje3.git/description

 

Proje depoları artık hazır.

şimdi NginX ayarlarına geçelim.
exit
logout
cd /etc/nginx/sites-available/

 

Default dosyasının yedeğini alalım.
cp -a default default.yedek

default yapılandırmanın içeriğini boşaltalım.
:>default

Dosyayı Düzenleyelim.
nano default

dosya içeriğine yapıştırın.
server {
listen 80 default;

access_log /var/log/nginx/gitweb.access.log;
error_log /var/log/nginx/gitweb.error.log info;

location /index.cgi {
root /usr/share/gitweb/;
include fastcgi_params;
gzip off;
fastcgi_param SCRIPT_NAME $uri;
fastcgi_param GITWEB_CONFIG /etc/gitweb.conf;
fastcgi_pass unix:/var/run/fcgiwrap.socket;
}
location / {
root /usr/share/gitweb/;
index index.cgi;
}
}

 

Kaydedip çıkın.

şimdi gitweb.conf dosyasını oluşturalım.
nano /etc/gitweb.conf

dosya içeriğine yapıştırın.
#------------------ Başlama
our $projectroot = "/srv/depo/git";
#------------------ Bitiş

Kaydedip çıkın.

Servisleri yeniden başlatalım.
service nginx restart
Restarting nginx: nginx.
service fcgiwrap restart
[ ok ] Restarting FastCGI wrapper: fcgiwrap

 

Örnek olması açısından github dan Zangetsu bloğu yansıladım.
cd git/
$ ls
proje1.git proje2.git proje3.git
git clone --bare https://github.com/caglar10ur/zangetsu
Cloning into bare repository 'zangetsu.git'...
remote: Counting objects: 2290, done.
remote: Total 2290 (delta 0), reused 0 (delta 0), pack-reused 2290
Receiving objects: 100% (2290/2290), 1.02 MiB | 369 KiB/s, done.
Resolving deltas: 100% (1117/1117), done.
echo "zangetsu.git yansısı" > zangetsu.git/description

Sonuç Resimleri.
gitweb1

gitweb2

 

gitweb3

iyi eğlenceler.

https://github.com/caglar10ur/zangetsu

https://www.syslogs.org/centos-uzerinde-git-server-gitweb-kurulumu/

https://misterpinchy.wordpress.com/2012/11/01/gitweb-and-nginx/

UYARI Ticari projelerinizi public etmeyiniz,  oluşacak veri kayıplarından, hatalardan vb. sorumlu değilim. tüm sorumluluk size aittir.
Labels: , ,

Yorum Gönder

[blogger][facebook][disqus][spotim]

Author Name

İletişim Formu

Ad

E-posta *

Mesaj *

Blogger tarafından desteklenmektedir.