Ограничение размера файла Github изменено 6/18/13. Не могу нажать сейчас
Как это изменение с 18 июня 2013 года влияет на мой существующий репозиторий с файлом, который превышает этот предел? Я последний раз толкнул 2 месяца назад с большим файлом.
У меня есть большой файл, который я удалил локально, но теперь я ничего не могу нажать. Я получаю "удаленную ошибку"... удаленный: ошибка: файл cron_log.log составляет 126,91 МБ; это превышает предел размера файла GitHub 100 МБ
Я добавил файл в .gitignore после оригинального нажатия... Но он все еще существует на удаленном (origin)
Удаление его локально должно избавиться от него в начале координат (Github)?... но... это не позволяет мне толкнуть, потому что есть файл на Github, который превышает предел...
https://github.com/blog/1533-new-file-size-limits
Это команды, которые я выпустил, плюс сообщения об ошибках.
git add .
git commit -m "delete cron_log.log"
git push origin master
remote: Error code: 40bef1f6653fd2410fb2ab40242bc879
remote: warning: Error GH413: Large files detected.
remote: warning: See http://git.io/iEPt8g for more information.
remote: error: File cron_log.log is 141.41 MB; this exceeds GitHub file size limit of 100 MB
remote: error: File cron_log.log is 126.91 MB; this exceeds GitHub file size limit of 100 MB
To https://github.com/slinds(omited_here)/linexxxx(omited_here).git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://github.com/slinds(omited_here)
Затем я попробовал такие вещи, как
git rm cron_log.log
git rm --cached cron_log.log
Те же ошибки.
Ответы
Ответ 1
Как отметил rlb.usa, Github добавил ограничение на размер файла, которое не позволяет вам перетаскивать файлы > 100 МБ. Вы попытались удалить файл в новом коммите и попытались нажать его. Это терпит неудачу, потому что вы не просто подталкиваете последнее коммит, но и еще три других. Эти три коммита содержат версии cron_log размером 141 МБ и 126 МБ. Они заставляют ваш толчок терпеть неудачу.
Чтобы исправить это, у вас есть два варианта:
- Запустите
git rebase -i origin/master
, установите каждую фиксацию для редактирования и удаления файла в каждом из них с помощью git commit --amend
.
- Используйте BFG Repo-Cleaner, чтобы очистить всю вашу историю.
Ответ 2
Привет, вы могли бы легко решить этот путь:
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch FILENAME.TAR'
--prune-empty --tag-name-filter cat -- --all
ссылка: https://help.github.com/articles/remove-sensitive-data
Ответ 3
В соответствии с GitHub ограничение размера нового файла (также: работа с большими файлы), созданный всего несколько часов назад, теперь у GitHub есть новые политики репозитория файлов размером 1 ГБ, предупреждения для подталкивания файлов более 50 МБ и полное отклонение для файлов с загрузкой 100 МБ.
GitHub предупреждает вас, когда вы нажимаете файл размером более 50 МБ. Мы отклоним толкает файлы размером более 100 МБ. Мы делаем это для нескольких причины.
У вас есть несколько вариантов, но не так много:
- Загрузите свои 100 МБ + файлы в другую службу и поделитесь им с этим
- Уменьшить размер файлов проблемных файлов
- Найти новый репозиторий
Ответ 4
Фактический предел для каждого файла в GitHub составляет 100 Мбайт, а не 100 МБ.
Демо: https://github.com/Franck-Dernoncourt/github-max-file-size
https://help.github.com/articles/what-is-my-disk-quota/ (mirror) ошибочно утверждает, что они устанавливают строгий предел файлов размером более 100 МБ
Путаница между MB и MiB может быть видна при нажатии: в приведенном ниже примере сообщение об ошибке с сервера GitHub указывает, что файл имеет значение 101 МБ, тогда как git правильно указывает, что это 101 MiB:
~\Documents\GitHub\test123 [master ↑1 +3 ~0 -0 !]> git push
Counting objects: 3, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 101.03 MiB | 896.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1), completed with 1 local objects.
remote: error: GH001: Large files detected. You may want to try Git Large File S
torage - https://git-lfs.github.com.
remote: error: Trace: e9206a9cd05c4ff5de79bba9d4caf9df
remote: error: See http://git.io/iEPt8g for more information.
remote: error: File 101MB is 101.00 MB; this exceeds GitHub file size limit of
100.00 MB
To https://github.com/Franck-Dernoncourt/test123.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://github.com/Franck-Dernoncourt/test12
3.git'
~\Documents\GitHub\test123 [master ↑1 +3 ~0 -0 !]>
Ответ 5
Используйте этот Python script для очистки вашего репо больших файлов (я использовал его для своего репо и отлично работал) https://gist.github.com/1433794
Ответ 6
Я попробовал пару вышеупомянутых ответов без везения. Но в итоге я нашел решение с использованием Github Desktop. Нажмите "Репозиторий", "Отменить последнюю фиксацию". Это позволило мне сделать это дважды, достаточно, чтобы удалить оскорбительную фиксацию. (Я уже удалил большие файлы из репозитория).