Depolarınızın nasıl yönetildiği, tek yerde puanlanır.
Git Sağlığı her deponun içeriğine değil, nasıl yönetildiğine bakar: varsayılan dal korunuyor mu, merge request'ler onaylanıyor mu, commit'ler görev anahtarı taşıyor mu, pipeline'da güvenlik araçları var mı, her deponun ihtiyaç duyduğu dosyalar yerinde mi. GitHub, GitLab, Bitbucket ve Azure DevOps'ta 29 kural ve ağırlıklı bir skor.
Çalışan bir kurulumdan ekranlar
Altı grup, 29 kural
Her kural deponun nasıl yönetildiğine dair evet-hayır bir soruyu yanıtlar ve bir önem derecesi ile ağırlık taşır.
Dal koruması
Varsayılan dal korumalı, doğrudan push yok, force push yok, release dalları ve etiketler korumalı.
Merge request kuralları
Onay zorunlu, en az onay sayısı, kendi kendini onaylama yok, birleştirmeden önce tartışmalar çözülmüş ve pipeline yeşil, sonrasında kaynak dal siliniyor.
İzlenebilirlik
Commit'ler ve merge request başlıkları görev anahtarı taşır, dal adları bir kalıba uyar ve bir iş takip sistemi bağlıdır.
CI'da güvenlik
SAST, gizli bilgi taraması, bağımlılık ve konteyner taraması, SBOM ve merge request raporlu SonarQube - pipeline'da, dahil edilen şablonlar da okunarak bulunur.
Depo düzeni
CODEOWNERS, commit'lenmiş bir lockfile, merge request ve görev şablonları ve commit'lenmiş gizli dosya olmaması (adla eşlenir; içerik okunmaz). README, .gitignore ve SECURITY.md'yi Uyumluluk modülü kontrol eder.
AppArch'ın kendisi
Son 30 günde bir collector rapor göndermiş; böylece diğer her yerdeki skorlar günceldir.
Bilinmiyor, sıfır demek değildir
Platformun ya da token'ın yanıtlayamadığı kural atlandı olarak işaretlenir ve skora girmez. Süresi dolmuş token'lı bir bağlantı "29 hata" diye değil, "2 kuraldan 0'ı puanlanabilir" diye görünür. Tamamı okunamayan pipeline için de aynısı geçerli: okunamayan bir include, kaldı değil atlandı demektir.
Kayıt yok, elle çalıştırılacak bir şey yok
Git bağlantısı olan her proje eklendiği andan itibaren dahil olur.
- 01
Proje ekleyin
İlk tarama proje oluşturulduğu anda kuyruğa alınır.
- 02
Taramalar kendini güncel tutar
Zamanlanmış taramalar her depoyu yeniden kontrol eder; geçen hafta değiştirilen bir ayar kimse sormadan görünür.
- 03
Düzeltin, skoru izleyin
Kalan her kural ne bulduğunu söyler; projenin skoru sağlık karnesinde diğer modül skorlarının yanında durur.
Hangi platformda neyi kontrol edebiliriz
Her platform her ayarı API'si üzerinden açmaz. Bir platform cevap veremediğinde kural atlanır ve skordan çıkar; asla kaldı sayılmaz.
| GitLab | GitHub | Bitbucket | Azure DevOps | |
|---|---|---|---|---|
| Varsayılan ve release dalları korumalı | ||||
| Birleştirme kuralları: onay, kendi onayı yok, yeşil pipeline, çözülmüş tartışmalar | atlanır | atlanır | ||
| Force push yok, varsayılan dala doğrudan push yok | atlanır | atlanır | ||
| Birleştirmeden sonra kaynak dal silinir | atlanır | atlanır | ||
| Korumalı etiketler, dal kuralında zorunlu görev anahtarı | atlanır | atlanır | atlanır | |
| Commit ve MR başlıklarında görev anahtarı, dal adlandırma | ||||
| CODEOWNERS, lockfile, şablonlar, commit'lenmiş gizli dosya yok | kısmen | kısmen | ||
| CI'da güvenlik araçları: SAST, gizli bilgi, bağımlılık, container, SBOM, SonarQube | ||||
| Collector aktif, iş takip sistemi bağlı |
Birden çok öğeyi kontrol eden kurallar kısmi puan verir: yedi daldan biri korumasızsa, yedisi korumasızmış gibi puan kaybedilmez.
Tüm sağlayıcılardaki tüm merge request'ler tek listede
Git Sağlığı, çalışma alanının merge request'lerini hangi platformda olursa olsun tek yerde de tutar.
- Duruma, projeye, yazara ve hedef dala göre süzün ya da arayın
- Her incelenmiş MR'ı bir rozet ArchPilot raporuna bağlar
- Archito'nun "olağandan uzun" filtresi takılanı gösterir
Git Sağlığı hakkında sorular
Hangi platformları kapsar?
Kodumuzu okur mu?
Token hangi izinleri ister?
Git Sağlığı diğer skorlarımızı değiştirir mi?
Üründe görün
Tüm ekran görüntüleri
Depolarınızın gerçekte nasıl yönetildiğini görün
Bir PoC sırasında Git sağlayıcınızı bağlayın; projeler eklenir eklenmez ilk skorlar gelir.