Я хотел бы переключиться с Dropbox на open source Sparkleshare. Он использует git для синхронизации и управления версиями. Если скажу, что у меня был 1GB файл, который я удалил в своей папке, он останется в истории локальной .git-папки. Но я хотел бы иметь такие тяжелые данные на сервере, а не на клиенте. Как я могу передать свой репозиторий и удалить локальный с помощью git? Большое спасибо!
Как удалить локальную историю git после фиксации?
Ответ 1
Проверьте это, возможно, будет полезно
http://dound.com/2009/04/git-forever-remove-files-or-folders-from-history/
Ответ 2
Решение, удаляющее историю
-  
git fetch --depth=1, чтобы обрезать старые коммиты. Это делает старые коммиты и их объекты недоступными. -  
git reflog expire --expire-unreachable=now --all. Для истечения срока действия всех старых коммитов и их объектов -  
git gc --aggressive --prune=allдля удаления старых объектов 
Конкретное решение только для удаления большого файла в локальной истории
- GitHub предлагает Git Большое хранилище файлов, которое хранит большие файлы всегда на сервере и извлекает их только при проверках. Очень легко настроить и использовать - если ваш репозиторий находится на GitHub, bitbucket или gitlab.
 - git-annex - позволяет хранить большие файлы в любом месте
 
Обсуждение: Как Git LFS и git -annex отличаются?