Git Advanced: Monorepo, Submodules & Workflows · Ders

DevOps'ta Git Güvenliği: Gizli Bilgiler, İmzalama ve Hook'lar

DevOps ve otomasyon işlem hatlarında gizli bilgileri Git dışında tutmayı, imzalı gönderimlerle yazarlığı doğrulamayı ve kancalarla ilkeleri otomatik olarak uygulamayı öğrenin.

4. ders / 413 adım

DevOps'ta Git Güvenliği: Gizli Bilgiler, İmzalama ve Hook'lar, CoddyKit'te ücretsiz bir Git Advanced: Monorepo, Submodules & Workflows dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Git Advanced: Monorepo, Submodules & Workflows öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Git Advanced: Monorepo, Submodules & Workflows kursu toplamda 4 dersten oluşur.

Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.

Git Is a Security Surface

In DevOps, Git drives deployments. That makes the repository a security surface: a leaked secret or a forged commit can compromise production. Securing Git is part of securing the pipeline.

Keep Secrets Out of History

Never commit API keys, tokens, or passwords. Once in history, a secret is effectively public forever, even after deletion, because the old commit still contains it.

Use a .gitignore and environment variables instead.

.env
*.pem
secrets/
config/credentials.json

Scanning for Leaked Secrets

Automated scanners catch secrets before they merge. Wire one into CI so a leaked token fails the build.

gitleaks detect --source . --verbose

If a Secret Leaks

If a secret reaches the remote, two steps are mandatory:

  • Rotate the credential immediately — assume it is compromised
  • Purge it from history with a tool like git filter-repo

Rotation matters more than purging.

git filter-repo --path config/credentials.json --invert-paths

Signing Commits

Signed commits prove who authored them. In automated environments this prevents impersonation and lets pipelines trust commit authorship.

git config commit.gpgsign true
git commit -S -m 'Deploy config update'

Verifying Signatures

CI can require that every commit on a protected branch is signed and verified, rejecting unsigned or unknown-key commits before they deploy.

git log --show-signature -1
git verify-commit HEAD

Client-Side Hooks

Hooks run scripts at Git lifecycle events. A pre-commit hook can block secrets or run linters before a commit is ever created.

#!/bin/sh
# .git/hooks/pre-commit
gitleaks protect --staged || exit 1

Server-Side Hooks

Client hooks can be bypassed. Server-side hooks (pre-receive) enforce policy centrally, rejecting non-compliant pushes for everyone, no matter their local setup.

#!/bin/sh
# pre-receive: reject force pushes to main
while read old new ref; do
  if [ "$ref" = 'refs/heads/main' ]; then
    echo 'Direct pushes to main are blocked'; exit 1
  fi
done

Branch Protection as Policy

Platform branch-protection rules complement hooks: require reviews, passing CI, and signed commits before merge. Policy enforced at the platform cannot be bypassed locally.

Least Privilege for Automation

Deploy bots should use scoped, short-lived tokens, not personal credentials. Grant only the access a job needs, and rotate tokens regularly to limit blast radius.

Auditing the Audit Trail

Git history and platform logs form an audit trail. Protect them: disallow history rewrites on shared branches and review who has admin rights, so the record of what shipped stays trustworthy.

Quick Check

Test your understanding of Git security in DevOps.

Recap

You learned to secure Git in DevOps: keep secrets out of history, scan automatically, rotate then purge on leaks, use signed commits, enforce policy with client and server-side hooks and branch protection, and apply least privilege to automation tokens.

Başlamak ücretsiz

Yapay zeka eğitmeniyle Git Advanced: Monorepo, Submodules & Workflows öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
12
Dersler
48

Sıkça Sorulan Sorular

“DevOps'ta Git Güvenliği: Gizli Bilgiler, İmzalama ve Hook'lar” dersi ücretsiz mi?

Evet — “DevOps'ta Git Güvenliği: Gizli Bilgiler, İmzalama ve Hook'lar” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Git Advanced: Monorepo, Submodules & Workflows kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Git Advanced: Monorepo, Submodules & Workflows kursu toplamda 4 dersten oluşur.

“DevOps'ta Git Güvenliği: Gizli Bilgiler, İmzalama ve Hook'lar” dersinde ne öğreneceğim?

DevOps ve otomasyon işlem hatlarında gizli bilgileri Git dışında tutmayı, imzalı gönderimlerle yazarlığı doğrulamayı ve kancalarla ilkeleri otomatik olarak uygulamayı öğrenin. Git Advanced: Monorepo, Submodules & Workflows ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Git Advanced: Monorepo, Submodules & Workflows öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Git Advanced: Monorepo, Submodules & Workflows, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“DevOps'ta Git Güvenliği: Gizli Bilgiler, İmzalama ve Hook'lar” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Git Advanced: Monorepo, Submodules & Workflows dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Git Advanced: Monorepo, Submodules & Workflows dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. GitOps İlkeleri ve Uygulaması
  2. Git Görevlerini Betiklerle Otomatikleştirme
  3. Git'i CI/CD ile Bütünleştirme
  4. DevOps'ta Git Güvenliği: Gizli Bilgiler, İmzalama ve Hook'lar
← Git Advanced: Monorepo, Submodules & Workflows Sayfasına Dön