To dlatego, że git nie jest skalowalny.
Jest to poważne ograniczenie w git, które jest zagłuszane przez poparcie git. Przeszukaj listy mailingowe git, a znajdziesz setki użytkowników zastanawiających się, dlaczego zaledwie 100 MB obrazów (powiedzmy, na stronę internetową lub aplikację) rzuca gita na kolana. Problem polega na tym, że prawie cały git polega na optymalizacji, którą nazywają „pakowaniem”. Niestety, pakowanie jest nieefektywne dla wszystkich oprócz najmniejszych plików tekstowych (tj. Kodu źródłowego). Co gorsza, staje się coraz mniej wydajny wraz z rozwojem historii.
To naprawdę żenująca wada w git, która jest reklamowana jako „szybka” (pomimo braku dowodów), a programiści gita są tego świadomi. Dlaczego tego nie naprawili? Na liście mailingowej git znajdziesz odpowiedzi od programistów git, którzy nie rozpoznają problemu, ponieważ ich dokumenty programu Photoshop (* .psd) mają zastrzeżony format. Tak, naprawdę jest tak źle.
Oto wynik:
Użyj git do małych projektów zawierających tylko kod źródłowy, dla których nie masz ochoty konfigurować oddzielnego repozytorium. Lub w przypadku małych projektów zawierających tylko kod źródłowy, w których chcesz skorzystać z modelu zdecentralizowanego tworzenia kopii całego repozytorium git. Lub gdy po prostu chcesz nauczyć się nowego narzędzia. To wszystko są dobre powody, dla których warto używać git, a nauka nowych narzędzi zawsze sprawia przyjemność.
Nie używaj git, jeśli masz dużą bazę kodu, pliki binarne, ogromną historię itp. Tylko jedno z naszych repozytoriów to TB. Git nie może tego znieść. VSS, CVS i SVN radzą sobie dobrze. (Jednak SVN nadyma się).
Daj też dajowi czas na dojrzewanie. Nadal jest niedojrzały, ale ma dużo rozpędu. Myślę, że z czasem praktyczna natura Linusa przezwycięży purystów OSS, a git w końcu będzie przydatny w szerszej dziedzinie.
git-bigfilesprojektu