Geri Dön
Grubby, sade Git depolarından statik siteler oluşturur
SiTech AI Team2 dk okuma

Grubby, sade Git depolarından statik siteler oluşturur

Grubby, sade Git depoları için Ruby ile yazılmış bir statik site oluşturucudur. Kramdown kullanır, kanca tabanlı güncellemeleri destekler ve her depo için ana dizin ve ayrı bir site oluşturur.

Sade Git depolarından statik siteler

Grubby, Git depoları için Ruby ile yazılmış bir statik site oluşturucudur. RepoRat'tan çatallanmıştır ve büyük ölçüde ondan ilham almıştır. Grubby, her sade Git deposu için bir web sitesi oluşturur ve ana depolar dizinini üretir.

Proje, Git, Ruby 3.0 veya daha yeni bir sürüm ve Kramdown gerektirir. Minimal yapılandırmaya sahip kendi görüşüne göre tasarlanmış bir çözümdür. Kramdown varsayılan Markdown ayrıştırıcısıdır, ancak değiştirilmesi mümkündür, sadece alternatif ayrıştırıcıların hatasız çalışacağı garanti edilmez.

Yapılandırma ve çıktı

Grubby, sade Git depolarının klasörlerinin .git uzantısıyla bittiğini varsayar. Bu adlandırma kuralı olmadan ana depolar dizini oluşturma düzgün çalışmayabilir. Ana yapılandırma dosyası _config.yml'dir ve temel alan adı ve yolları ayarlamak için kullanılır.

Varsayılan olarak, depolar dizini ana dizinin kökünde bulunur ve index.html olarak adlandırılır. Çıktı dosyasının adı _config.yml içinde değiştirilebilir. Oluşturulan sitelerin görünümünü veya gezinmesini değiştirmek isteyen kullanıcılar style.css, _header.html ve _footer.html dosyalarını değiştirebilir.

Git kancalarıyla site oluşturma

Kullanım kılavuzu, NearlyFreeSpeech.NET'in paylaşımlı barındırmasıyla ilgilidir, ancak süreç özel bir VPS'de de benzer şekilde açıklanmıştır. Örneğinde sade depolar /home/public/git.sitename.org konumunda saklanır. Grubby'nin kendisi özel bir dizine klonlanır ve süreç sade deponun içinden başlatılır.

Deponun hooks klasöründe bir post-update kancası oluşturulur ve ona çalıştırma izni verilir. Betik, GIT_DIR'i sıfırlar, git update-server-info'yu çalıştırır, mevcut depoyu geçici bir dizine klonlar, description dosyasını kopyalar ve Ruby oluşturucuyu geçici bir checkout'ta çalıştırır. Ardından geçici dizin silinir.

Kancanın çalıştırılması her depo için ilgili dizinde ayrı bir site oluşturur ve kökteki index.html'i günceller. Aynı çağrı post-receive kancasına da yerleştirilebilir. Global bir post-update kancası, sürecin her depoya eklenmesine gerek kalmadan başlatılması için kullanılabilir.

Mevcut sınırlamalar

Grubby, tek tek commitler, dallar veya deponun diğer ayrı değişiklikleri için ayrı sayfalar oluşturmaz. Oluşturulan çıktı depo sitelerine ve ana depolar dizinine odaklanmıştır.

SSiTech

SiTech — AI destekli web geliştirme

Hızlı ve modern web siteleri kuruyor, AI'yı gerçek iş akışlarına taşıyoruz. Projeniz veya sorunuz mu var? Yardımcı olmaktan mutluluk duyarız.