Git ve Apache HTTP Sunucusunu Kurma:
İlk olarak, CentOS 8 paket deposu önbelleğini aşağıdaki komutla güncelleyin:
$ sudo dnf önbellek
Şimdi Git, Apache HTTP sunucusu ve Apache araçlarını aşağıdaki komutla kurun:
$ sudo dnf git httpd httpd araçlarını kurun
Şimdi basın Y ve ardından basın
Git, Apache ve gerekli Apache araçları kurulmalıdır.
Apache HTTP Sunucusunu Yapılandırma:
Bu bölümde, HTTP protokolü üzerinden Git depolarına erişmek için Apache sunucusunu nasıl yapılandıracağınızı göstereceğim.
İlk olarak, yeni bir yapılandırma dosyası oluşturun /etc/httpd/conf.d/git.konf aşağıdaki komutla:
$ sudo vi /etc/httpd/conf.d/git.konf
Şimdi, yapılandırma dosyasına aşağıdaki satırları ekleyin /etc/httpd/conf.d/git.konf:
SetEnv GIT_PROJECT_ROOT /var/www/git
SetEnv GIT_HTTP_EXPORT_ALL
DocumentRoot /var/www/git
ScriptAlias / /usr/libexec/git-core/git-http-backend/
Seçenekler +ExecCGI -MultiViews +SymLinksIfOwnerMatch
İzin Ver Geçersiz Kıl Yok
Tüm izinleri iste
Dav On
Seçenekler Dizinler FollowSymLinks
İzin Ver Geçersiz Kıl Yok
Tüm izinleri iste
Son yapılandırma dosyası aşağıdaki gibi görünmelidir. Şimdi, yapılandırma dosyasını kaydedin.
Şimdi, oluştur GIT_PROJECT_ROOT dizin /var/www/git aşağıdaki komutla:
$ sudo mkdir /var/www/git
Şimdi, SELinux'u şu şekilde yapılandırın: /var/www/git aşağıdaki komutla dizin:
$ sudo semanage fcontext -m -t httpd_sys_rw_content_t"/var/www/git(/.*)?"
SELinux değişikliklerinin etkili olması için aşağıdaki komutu çalıştırın:
$ sudo restorecon -Rv /var/www/git
Şimdi, aşağıdaki komutla Apache HTTP sunucu hizmetini yeniden başlatın:
$ sudo systemctl httpd'yi yeniden başlat
Ayrıca, aşağıdaki komutla Apache HTTP sunucu hizmetini CentOS 8 sistem başlangıcına ekleyin:
$ sudo systemctl httpd'yi etkinleştir
Şimdi, aşağıdaki komutla HTTP bağlantı noktasına (80) dosya duvarından izin verin:
$ sudo güvenlik duvarı-cmd --add-service=http --kalıcı
Değişikliklerin etkili olması için güvenlik duvarını aşağıdaki şekilde yeniden yükleyin:
$ sudo güvenlik duvarı-cmd -- yeniden yükle
HTTP Erişilebilir Git Depoları Oluşturmak İçin Daha Kolay Bir Komut Dosyası Yazma:
HTTP erişilebilir Git depoları oluşturmayı kolaylaştırmak için, değerli zamanınızdan çok tasarruf etmek için kullanabileceğiniz basit bir kabuk komut dosyası yazdım.
Komut dosyamı kullanmak istiyorsanız, yolda yeni bir dosya oluşturun /usr/sbin/git-crate-repo aşağıdaki komutla:
$ sudo vi /usr/sbin/git-create-repo
Ardından, yeni oluşturulan dosyaya aşağıdaki kod satırlarını yazın /usr/sbin/git-crate-repo.
#!/bin/bashGIT_DIR="/var/www/git"
REPO_NAME=1$
mkdir -p "$GIT_DIR/$REPO_NAME.git"
cd "$GIT_DIR/$REPO_NAME.git"
git init --bare &> /dev/null
git-daemon-export-ok'a dokunun
cp kancaları/güncelleme sonrası.örnek kancalar/güncelleme sonrası
git yapılandırma http.alıcı paketi doğru
git yapılandırma http.yükleme paketi gerçek
git güncelleme-sunucu bilgisi
chown -Rf apache:apache "$GIT_DIR/$REPO_NAME.git"
echo "Git deposu '$REPO_NAME' $GIT_DIR/$REPO_NAME içinde oluşturuldu.git"
Son kabuk betiği böyle görünüyor. İşiniz bittiğinde dosyayı kaydedin.
Şimdi, kabuk komut dosyasına yürütülebilir izin ekleyin /usr/sbin/git-create-repo aşağıdaki komutla:
$ sudo chmod +x /usr/sbin/git-create-repo
HTTP Erişilebilir Git Depoları Oluşturun:
Artık yeni bir HTTP erişilebilir Git deposu oluşturabilirsiniz (haydi diyelim Ölçek) aşağıdaki komutla:
$ sudo git-create-repo testi
Yeni bir HTTP erişilebilir Git deposu Ölçek sandıklı olmalı.
Git Depolarına Git sunucusundan erişme:
CentOS 8 Git sunucunuzda oluşturduğunuz Git depolarına erişmek için, CentOS 8 Git sunucusunun IP adresine ve Git deposu adına ihtiyacınız vardır.
Git sunucusu yöneticisi, Git sunucusunun IP adresini aşağıdaki komutla bulabilir:
$ nmcliBenim durumumda, IP adresi 192.168.20.129. Senin için farklı olacak. Bu nedenle, bundan sonra sizinkiyle değiştirdiğinizden emin olun.
Git sunucusu yöneticisi IP adresini bulduğunda, Git sunucusunda barındırılan Git depolarını kullanacak kullanıcılara/geliştiricilere gönderebilir. Ardından kullanıcılar/geliştiriciler istedikleri Git depolarına erişebilir.
örneğin, eğer bob Git deposunu klonlamak istiyor Ölçek Git sunucusundan bunu aşağıdaki gibi yapabilir:
$ git klonu http://192.168.20.129/test.git
Git deposu Ölçek Git sunucusundan klonlanmalıdır.
Yeni bir dizin Ölçek/ bob'un mevcut çalışma dizininde oluşturulmalıdır.
Şimdi, bob şuraya gidebilir: Ölçek/ dizin şu şekilde:
$ cd testi/
Şimdi, bob yeni bir dosya oluşturuyor İleti.Txt Git deposunda.
$ echo 'linuxhint'ten merhaba' >> mesajı.Txt
Bob değişiklikleri taahhüt eder.
$ git ekle .$ git commit -m 'ilk taahhüt'
Bob, değişikliklerin depoya kaydedilip gerçekleştirilmediğini onaylar.
$ git günlüğü --oneline
Bob, değişiklikleri Git sunucusuna yükler.
$ git itme kaynağı
Başka bir geliştirici (diyelim ki Şovon) katkıda bulunmak isteyenler Ölçek Git deposu ayrıca Ölçek Git sunucusundan depo.
$ git klonu http://192.168.20.129/test.git
Shovon şuraya gider: Ölçek/ dizin.
$ cd testi/
Shovon, bob'un yaptığı taahhüdü buldu.
Şimdi, shovon mesajı değiştiriyor.robots.txt dosyası.
$ echo 'shovon bazı yeni metinler ekledi' >> mesajı.Txt
Değişiklikleri taahhüt eder.
$ git ekle .$ git commit -m 'yeni bir mesaj ekledi'
Shovon, değişikliklerin depoya kaydedilip gerçekleştirilmediğini onaylar.
$ git günlüğü --oneline
Shovon, değişiklikleri Git sunucusuna yükler.
$ git itme kaynağı
Şimdi bob değişiklikleri Git sunucusundan alıyor.
$ git çek
Bob yeni taahhüdü bulur.
$ git günlüğü --oneline
Bob, Shovon'un mesajda yaptığı değişiklikleri bulur.robots.txt dosyası.
Git depolarını Git HTTP sunucusundan bu şekilde kullanabilirsiniz.
Git Sunucusuna Kullanıcı Kimlik Doğrulaması Ekleme:
Sunucu genelindeki Git depolarına veya belirli Git depolarına kullanıcı kimlik doğrulaması eklemek istiyorsanız, Ubuntu'da Git Sunucusunu HTTP ile Yapılandırma makalesine bakın.
Git Smart HTTP Sunucusunu CentOS 8'de bu şekilde yapılandırır ve Git sunucusundan Git depolarını kullanırsınız. Bu makaleyi okuduğunuz için teşekkürler.