SORU
1 AĞUSTOS 2009, CUMARTESİ


Bir dizini kalıcı olarak gıt Kaldır

Kişisel gıt benim repo, artık gerekli olmayan küçük binlerce resim içeren bir dizin var. Bir şekilde bütün gıt geçmişi silmek var mı? Denedim

git filter-branch --index-filter "git rm -rf --cached --ignore-unmatch imgs" HEAD

ve

git filter-branch --tree-filter 'rm -fr imgs' HEAD

ama git repo boyutu değişmeden kalır. Herhangi bir fikir?

Teşekkürler

CEVAP
1 AĞUSTOS 2009, CUMARTESİ


ProGit kitabı Removing Object ilginç bir bölüm vardır.

Bununla bitmeyecek:

Geçmişi artık bu dosya için bir başvuru içerir.
Ancak, reflog ve yeni bir set hakemler bunu Gıt eklendiğinde yaptığın filter-branch .git/refs/original hala var bu yüzden bunları kaldırmak ve sonra toplayıp veritabanı. Sen toplayıp önce o eski işleyen bir işaretçi bir şey kurtulmak gerekir:

$ rm -Rf .git/refs/original
$ rm -Rf .git/logs/
$ git gc
$ git prune --expire 

(git prune --expire zorunlu değil ama gevşek nesnelerden dizin içeriği kaldırabilirsiniz)
Durumda bu komutları yapmadan önce, sadece;*)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:
Git

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BaaaStuds's channel

    BaaaStuds's

    10 Mart 2009
  • Michelle Phan

    Michelle Pha

    18 Temmuz 2006
  • Palmundo Ec

    Palmundo Ec

    11 HAZİRAN 2009