Yerel projeyi GitHub’a göndermeden önce `.gitignore`, Git kimliği, ilk commit, remote URL ve repository görünürlüğü doğrulanmalıdır. Private satış projelerinde `.env`, anahtar, veritabanı yedeği ve müşteri dosyaları commit edilmemelidir.
git init
git add .
git commit -m "İlk sürüm"
git branch -M main
git remote add origin https://github.com/USER/REPO.git
git push -u origin mainYerel projeyi GitHub’a göndermeden önce `.gitignore`, Git kimliği, ilk commit, remote URL ve repository görünürlüğü doğrulanmalıdır. Private satış projelerinde `.env`, anahtar, veritabanı yedeği ve müşteri dosyaları commit edilmemelidir.
`git status`, aktif branch, remote ve son commitleri görmeden reset veya force işlemi yapmayın.
HTTPS credential, SSH key, remote URL ve GitHub hesabının doğru olduğunu kontrol edin.
Fetch, merge veya rebase öncesinde commit ya da backup branch ile geri dönüş noktası bırakın.
Protected branch, review, CI ve secret scanning kurallarını aşmak yerine feature branch akışını kullanın.
Token, `.env`, private key veya production veritabanını commit etmeyin.
Anlamı: Komut Git repository olmayan klasörde çalıştırıldı.
Muhtemel neden: Yanlış klasör veya `git init` yapılmadı.
Anlamı: Commit yazarı tanımlı değil.
Muhtemel neden: user.name ve user.email eksik.
Anlamı: Index’e yeni dosya/değişiklik eklenmemiş.
Muhtemel neden: Dosyalar ignore edilmiş veya zaten commitli.
Anlamı: origin remote daha önce tanımlanmış.
Muhtemel neden: Aynı URL tekrar ekleniyor.
Anlamı: Push edilecek main ref’i bulunmuyor.
Muhtemel neden: İlk commit yok veya branch adı farklı.
Anlamı: Local branch remote branch’i takip etmiyor.
Muhtemel neden: İlk push `-u` olmadan denendi.
Anlamı: Hassas veri Git geçmişine girdi.
Muhtemel neden: Eksik `.gitignore`.
Anlamı: Local ve remote ayrı ilk commitlere sahip.
Muhtemel neden: GitHub’da README ile repo oluşturuldu.
Bu ifadeyle eşleşen kayıt bulunamadı.
git --versionGit kurulumunu ve sürümünü gösterir.
git config --global --get user.name && git config --global --get user.emailGlobal commit kimliğini gösterir.
git status --short --branchBranch ve dosya durumunu özetler.
git remote -vFetch ve push URL’lerini gösterir.
git log --oneline --decorate -n 5Mevcut commit geçmişini gösterir.
git status --short | grep -Ei '(\.env|\.pem|\.key|\.sql|backup|secret|token)' || trueCommit öncesi riskli dosya adlarını tarar.
git add .
git push origin maingit add .
git commit -m "İlk sürüm"
git branch -M main
git push -u origin maingit add .printf ".env\nnode_modules/\nvendor/\n*.sql\n*.zip\n" >> .gitignore
git add .git remote add origin YENI_URLgit remote set-url origin YENI_URLgit init
git remote add origin URLgit add .
git commit -m "Güncelleme"
git pushGit for Windows, PowerShell, Git Bash ve VS Code Source Control birlikte kullanılabilir.
HTTPS credential manager; SSH ise uzun süreli ve çoklu hesaplı geliştirme ortamlarında kullanılabilir.
Repository rolü, protected branch, Pull Request ve CI politikaları birlikte yönetilmelidir.
Kolay başlangıç için HTTPS ve Git Credential Manager; otomasyon ve çoklu hesap için SSH uygundur.
Git işlemlerinde hesap parolası yerine PAT, credential manager, GitHub CLI veya SSH kullanılır.
Yalnız erişimi sınırlar; secret, parola, private key ve müşteri verileri yine commit edilmemelidir.
Yalnız geçmişi bilinçli yeniden yazılan kişisel feature branch’te ve mümkünse `--force-with-lease` ile kullanılmalıdır.
Branch protection gerektiriyorsa zorunludur; tek kişilik projede de review ve güvenli main geçmişi sağlar.
OWNER, REPO, branch, URL ve dosya değerlerini projenize göre değiştirip önce `git status` ve `git remote -v` ile doğrulayın.
Genellikle hayır. `.git` klasörünü silmek commit geçmişini, branch ve remote bilgilerini kaybettirebilir.
Windows, VS Code, Git Bash, SSH, private repository, protected branch, merge conflict ve GitHub Actions sorunlarını güvenli Git akışıyla inceliyoruz.