Bir web sunucusunun barındırılmasıyla bir benzetme yaparsam, git'in verilerinin içeride olması gerektiğini söyleyebilirim /var/git
, bu nedenle git depomuzda/var/git/myrepo
S : Doğru tahmin bu mu?
Bir web sunucusunun barındırılmasıyla bir benzetme yaparsam, git'in verilerinin içeride olması gerektiğini söyleyebilirim /var/git
, bu nedenle git depomuzda/var/git/myrepo
S : Doğru tahmin bu mu?
Yanıtlar:
Burada kendi kişisel dininiz tarafından dikte edilen ve hier(7)
sistemdeki kılavuz sayfasının içeriği dışında doğru ya da yanlış cevap yoktur .
tipik bir Linux hier
sayfası ; Tipik BSD hier
manpage )
/var/git/*
şahsen bana makul görünüyor. Benimki orası.
Altında bir dizine (veya paylaşılan dosya sistemine) yerleştirin /srv
. Bunun için var.
/srv
Dizin içindir sistem tarafından sunulan siteye özgü verileri . Standarttan:
Bunu belirlemenin bu ana amacı, kullanıcıların belirli servisler için veri dosyalarının konumunu bulabilmeleri ve böylece salt okunur veri, yazılabilir veri ve komut dosyaları (cgi komut dosyaları gibi) için tek bir ağaç gerektiren servislerin makul şekilde yerleştirilebilmesidir. Yalnızca belirli bir kullanıcının ilgisini çeken veriler, bu kullanıcıların giriş dizinine girmelidir.
Alt dizinlerini adlandırmak için kullanılan metodoloji
/srv
belirtilmemiştir çünkü şu anda bunun nasıl yapılması gerektiğine dair bir fikir birliği yoktur. Altındaki verileri yapılandırmak için bir yöntem/srv
protokol iledir, örn.ftp
,rsync
,www
Vecvs
. Büyük sistemlerde yapılandırılması için yararlı olabilir/srv
gibi idari bağlamda tarafından/srv/physics/www
,/srv/compsci/cvs
vb Bu kurulum taşıyıcıdan taşıyıcıya farklı olacaktır. Bu nedenle, hiçbir program,/srv
içinde depolanan mevcut veya verilerin belirli bir alt dizin yapısına dayanmamalıdır/srv
. Bununla birlikte/srv
, her zaman FHS uyumlu sistemlerde bulunmalı ve bu veriler için varsayılan konum olarak kullanılmalıdır.Dağıtımların, bu dizinlere yerel olarak yerleştirilmiş dosyaları yönetici izni olmadan kaldırmamaya özen göstermesi gerekir.
SELinux etkin bir sistemde, varsayılan dizindir /var/www/git
ve repolar alt dizinlerinde olmalıdır. Veya, örneğin /srv/git
, dosya içeriğini kullanabilir ve eşdeğer olarak ayarlayabilirsiniz:
semanage fcontext -a -e /var/www/git /srv/git
/home/git/
Bu başlangıçta biraz sıradışı görünebilir, ancak yaptığınız zaman bu dizin sizin için (doğru izinlerle) yapıldığı için çok makuldür sudo useradd git
. Sadece git kullanıcısına geçebilir cd
ve hemen çalıştırabilirsiniz:
$ mkdir .ssh; chmod 700 .ssh
$ touch .ssh/authorized_keys; chmod 600 .ssh/authorized_keys
ve akranlarınızın genel anahtarlarını, yeni oluşturulan yetkili_ anahtarlar dosyasına koyun.
git init --bare
Projenizi yaptıktan sonra , "url" o zaman sadece ... bekleyin ...
git@<server>:<project>
Voretaq7'nin dediği gibi, böyle bir konuda doğru ya da yanlış cevap yoktur. Ancak, izleri izlemek istiyorsanız, veri tabanı izleri kendi verilerini depolar gibi görünüyor.
/var/lib/soft
Örneğin, debian'daki Postgresql 9.1 için klasör
/var/lib/postgresql/9.1/
Böylece şahsen seçerdim
/var/lib/git
Arch /srv/http
Linux'umda apache var (sistem varsayılanı) ve bunu node.js http sunucuları için de kullanıyorum. Benzer şekilde tüm git depolarını da yerleştirmeye karar verdim /srv/git
.
GitLab'ı kullanıyorum ve /srv/git
bu durumda da git için giriş klasörü.
Nihayetinde size kalmış. Dağıtımınızdaki diğer hizmetlere benzer bir formata yapışmanın hatırlamanın kolay olduğunu buldum.
Gitmek için bazı ön uçlar kullanıyorsanız, dağıtımınızla paketlenmiş olanın yerleştirmek istediği yere gidin. Başka bir şey sadece gereksiz uyumsuzluklar yaratıyor.
Öncelikle, / srv önerisiyle ilgili olarak, tüm git havuzlarının web siteleri için kullanıldığı varsayımı altındasınız. Sizin için doğru olabilir, ancak web sitesi olmayan bir yazılıma sahip olabilirsiniz.
İkinci olarak, kod havuzlarınızı / var / www / html veya / srv / html dışında saklayarak, iki güzel avantaj elde edersiniz. Depounuza istediğiniz düzeyde sembolik bağlantılar oluşturarak kütüphanelerinizi gizlemeyi kolaylaştırabilirsiniz. Ayrıca, havuzunuzun konumu hiç değişmezse, sanal ana bilgisayar yapılandırmalarınızı değiştirmeniz gerekmez. Bunun yerine sembolik bağlarınızı düzeltin.
/ Var / repo kullanıyordum ama sanırım / var / git'in daha iyi olduğunu ve bundan sonra kullanacağını düşünüyorum.