Klasörü ve içindekileri çıkartın git/GitHub'un tarihi
GitHub Hesabım üzerinde bir depo üzerinde çalışıyordum ve bu şans eseri buldum sorunu.
- Node.js birkaç etmesinin önünü bir paket yüklü bir klasör ile proje
- Paketler 1* *klasör vardı
- Git deposu için klasör eklendi ve github (o zamanlar etmesinin önünü parçası düşünmüyordum) kodu itti
- Gerçekten bu klasör kod parçası olmaya ihtiyacın olmadığını fark etti
- Bu klasör silinmiş, itti onu
Bu örnek, toplam gıt repo büyüklüğü civarında6 MBgerçek kod (tüm klasör hariç) sadece nerede olduğunu300 KB.
Şimdi ne arıyorum sonunda bir şekilde kurtulmak için detayları bu paket klasöründen gıt tarihinde Yani eğer birinin klonu, gerek yok indir 6 MB değerinde tarihi tek gerçek dosyaları elde edilecek gibi son commit olur 300 KB.
Bunun için Olası çözümler aradım ve bu 2 yöntem denedim
- Remove file from git repository (history)
- http://help.github.com/remove-sensitive-data/
- https://gist.github.com/1588371
Özetle, komut dosyasını çalıştırdıktan sonra Klasör kurtuldum gösterdiği yere işe yaradı gibi ve 50 farklı işliyor değiştirilmiş gösterdi sonra o geldi. Ama bana bu kod itme izin vermedi. Onu itmeye çalıştım, Branch up to date
ama 50 tamamlar gösterdi git status
üzerine değiştirildi " dedi. Diğer 2 yöntem de işe yaramadı.
Benim localhost üzerinde repo boyutunu kontrol ettiğimde bu klasör geçmişi, kurtuldum gösterdi olsa bile, hala 6 MB civarıydı şimdi. (Ben de refs/original
klasör silinmiş ama repo boyutu değişir) yoktu.
Ne olduğumu seyir için açıklık, varsa bir şekilde kurtulmak için sadece tamamlama tarihi belirli olan tek şey bence oldu) ama aynı zamanda bu dosyaları gıt olduğunu varsayarak tutmak istiyor için geri alma.
Diyelim ki bir çözüm sundu bu ve uygulanması benim localhost ama malesef yeniden o GitHub repo, mümkün müdür klon olan repo, geri alma ilk taahhüt gerçekleştirmek hile ve ıkın (veya demek şimdi bu git yine de bir tarihin tüm bu teslimleri? - aka. 6 MB).
Benim nihai hedef işte temelde bul en iyi yolu kurtulmak için klasör içeriğini çocuğuyum, böylece bir kullanıcı yok indir 6 MB değerinde şeyler hala belki diğer işleyen hiç dokunmadım modülleri klasör (hemen hemen hepsi) git tarih oldu.
Bunu nasıl yapabilirim?
CEVAP
Buraya kopyala-yapıştır kodu için:
Bu tarihten node_modules
kaldırmak olan bir örnektir
git filter-branch --tree-filter 'rm -rf node_modules' --prune-empty HEAD
echo node_modules/ >> .gitignore
git add .gitignore
git commit -m 'Removing node_modules from git history'
git gc
GitHub değişiklikler yama şeklinde bir...
Nasıl github depo klasörü oluşturmak i...
Bir klasörün içindekileri değil klasör...
Bu klonlama önce bir github repo büyük...
Nasıl Github pull request işlemciyi de...