Skip to main content
Мы публикуем частые обновления нашей документации, и перевод этой страницы может все еще выполняться. Актуальные сведения см. в документации на английском языке.

Поддержка этой версии GitHub Enterprise была прекращена 2023-03-15. Исправления выпускаться не будут даже при критических проблемах безопасности. Для повышения производительности, укрепления безопасности и новых функций установите последнюю версию GitHub Enterprise. Чтобы получить справку по обновлению, обратитесь в службу поддержки GitHub Enterprise.

Сведения о больших файлах на GitHub

GitHub Enterprise Server ограничивает размер файлов, которые можно отслеживать в обычных репозиториях Git. Узнайте, как отслеживать или удалять файлы, выходящие за пределы лимита.

Сведения об ограничениях размера на 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, вы можете удалить файл и изменить фиксацию:

  1. Откройте ТерминалТерминалGIT Bash. 1. Измените текущий рабочий репозиторий на локальный проект.
  2. Чтобы удалить файл, введите команду git rm --cached:
    $ git rm --cached GIANT_FILE
    # Stage our giant file for removal, but leave it on disk
  3. Зафиксируйте это изменение с помощью параметров --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
  4. Отправка фиксаций в экземпляр GitHub Enterprise Server:
    $ git push
    # Push our rewritten, smaller commit

Удаление файла, добавленного в рамках более ранней фиксации

Если вы добавили файл в рамках предыдущей фиксации, его необходимо удалить из журнала репозитория. Чтобы удалить файлы из журнала репозитория, можно использовать BFG Repo-Cleaner или команду git filter-repo. Дополнительные сведения см. в разделе Удаление конфиденциальных данных из репозитория.

Распространение больших двоичных файлов

Если вам нужно распространять большие файлы в репозитории, можно создать выпуски на экземпляр GitHub Enterprise Server. Выпуски позволяют упаковывать программное обеспечение, заметки о выпуске и ссылки на двоичные файлы для использования другими людьми. Дополнительные сведения см. на сайте Сведения о выпусках.