Git geçmişinden dosya temizleme
git, git history, file cleanup

FILENAME=""
git filter-branch --force --index-filter \
"git rm --cached --ignore-unmatch $FILENAME" \
--prune-empty --tag-name-filter cat -- --all
git push origin --force --all
git push origin --force --tags
git for-each-ref --format='delete %(refname)' refs/original | git update-ref --stdin
git reflog expire --expire=now --all
git gc --prune=nowFILENAME=""ile temizlemek istediğiniz dosyanın adını belirtin.git filter-branchkomutu ile Git geçmişinde belirli bir dosyanın tüm izlerini temizleyebiliriz.-forceparametresi, filtre dalının zaten var olduğu durumlarda hata vermemesi için kullanılır.-index-filterparametresi, her bir commit için çalıştırılan komutu belirtir.git rm --cached --ignore-unmatch $FILENAMEkomutu ile belirtilen dosyanın tüm versiyonlarını kaldırırız.-prune-emptyparametresi, dosya değişikliği içermeyen boş commit'leri kaldırır.-tag-name-filter cat -- --allparametresi, tüm dallar ve etiketler üzerinde işlem yapar.git push origin --force --allvegit push origin --force --tagskomutları ile değişiklikleri uzak depoya zorla push ederiz.git for-each-ref --format='delete %(refname)' refs/original | git update-ref --stdinkomutu ile orijinal referansları sileriz.git reflog expire --expire=now --allvegit gc --prune=nowkomutları ile git geçmişini temizleriz.
Last updated
Was this helpful?