Сведения об ограничениях размера на GitHub Enterprise Server
GitHub Enterprise Server пытается обеспечить достаточное хранилище для всех репозиториев Git, хотя существуют жесткие ограничения для размеров файлов и рекомендаций для размеров репозиториев.
Ограничения размера файла
На GitHub Enterprise Server допустимый размер файлов в репозиториях ограничен. При попытке добавить файл размером более 50 MБ или увеличить существующий файл сверх этого размера GIT выдаст предупреждение. Изменения будут успешно отправлены в репозиторий, но, возможно, будет лучше удалить фиксацию, чтобы свести к минимуму влияние на производительность. Дополнительные сведения см. в разделе Удаление файлов из журнала репозитория.
Примечание. Размер файла, добавляемого в репозиторий через браузер, не может превышать 25 МБ. Дополнительные сведения см. в разделе Добавление файла в репозиторий.
По умолчанию GitHub Enterprise Server блокирует файлы размером более 100 МБ. Однако администратор сайта может настроить другое ограничение для экземпляр GitHub Enterprise Server. Дополнительные сведения см. в разделе Применение политик управления репозиториями в организации.
Для отслеживания файлов размером более этого предела необходимо использовать Хранилище больших файлов Git (Git LFS). Дополнительные сведения см. в разделе Сведения о хранилище больших файлов Git Large File Storage.
Если вам нужно распространять большие файлы в репозитории, можно создавать выпуски на экземпляр GitHub Enterprise Server вместо отслеживания файлов. Дополнительные сведения см. в разделе Распространение больших двоичных файлов.
В GIT не предусмотрена обработка больших файлов SQL. Для совместной работы с большими базами данных с другими разработчиками рекомендуется использовать Dropbox.
Рекомендации по размеру репозитория
Рекомендуется, чтобы репозитории оставались небольшими, в идеале менее 1 ГБ, и крайне нежелательно, чтобы их размер превышал 5 ГБ. Небольшие репозитории быстрее клонируются и проще в работе и поддержке.
Вы можете предотвратить влияние репозитория на инфраструктуру, эффективно управляя размером репозитория и общей работоспособностью. Советы и средства для анализа репозитория можно найти в репозитории github/git-sizer .
Удаление файлов из журнала репозитория
Предупреждение. Эти процедуры окончательно удаляют файлы из репозитория на компьютере и экземпляр GitHub Enterprise Server. Если файл важен, создайте его локальную резервную копию в каталоге за пределами репозитория.
Удаление файла, добавленного в рамках последней неотправленной фиксации
Если файл был добавлен с последней фиксацией и вы не отправлены в экземпляр GitHub Enterprise Server, вы можете удалить файл и изменить фиксацию:
- Откройте ТерминалТерминалGIT Bash. 1. Измените текущий рабочий репозиторий на локальный проект.
- Чтобы удалить файл, введите команду
git rm --cached
:$ git rm --cached GIANT_FILE # Stage our giant file for removal, but leave it on disk
- Зафиксируйте это изменение с помощью параметров
--amend -CHEAD
:$ git commit --amend -CHEAD # Amend the previous commit with your change # Simply making a new commit won't work, as you need # to remove the file from the unpushed history as well
- Отправка фиксаций в экземпляр GitHub Enterprise Server:
$ git push # Push our rewritten, smaller commit
Удаление файла, добавленного в рамках более ранней фиксации
Если вы добавили файл в рамках предыдущей фиксации, его необходимо удалить из журнала репозитория. Чтобы удалить файлы из журнала репозитория, можно использовать BFG Repo-Cleaner или команду git filter-repo
. Дополнительные сведения см. в разделе Удаление конфиденциальных данных из репозитория.
Распространение больших двоичных файлов
Если вам нужно распространять большие файлы в репозитории, можно создать выпуски на экземпляр GitHub Enterprise Server. Выпуски позволяют упаковывать программное обеспечение, заметки о выпуске и ссылки на двоичные файлы для использования другими людьми. Дополнительные сведения см. на сайте Сведения о выпусках.