Это команда git-repack, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
git-repack - упаковывает распакованные объекты в репозиторий
СИНТАКСИС
мерзавец перепаковать [-a] [-A] [-d] [-f] [-F] [-l] [-n] [-q] [-b] [--window = ] [--depth = ]
ОПИСАНИЕ
Эта команда используется для объединения всех объектов, которые в настоящее время не находятся в «пакете», в
пакет. Его также можно использовать для реорганизации существующих пакетов в единый, более эффективный
пак.
Пакет - это набор объектов, сжатых по отдельности, с дельта-сжатием.
применяется, хранится в одном файле со связанным индексным файлом.
Пакеты используются для снижения нагрузки на зеркальные системы, механизмы резервного копирования, дисковые хранилища и т. Д.
ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
-a
Вместо того, чтобы постепенно упаковывать распакованные объекты, упакуйте все, на что есть ссылки, в
единичная упаковка. Особенно полезно при упаковке репозитория, который используется для частных
разработка. Использовать с -d. Это очистит объекты, которые оставляет после себя git prune,
но git fsck --full --dangling отображается как висячий.
Обратите внимание, что пользователям, использующим глупые протоколы, придется загружать весь новый пакет в
чтобы получить любой содержащийся объект, независимо от того, сколько других объектов в этом пакете они
уже есть на месте.
-A
То же, что и -a, если только -d используется. Тогда любые недостижимые объекты в предыдущем пакете становятся
свободные, распакованные предметы, вместо того, чтобы оставаться в старой упаковке. Недостижимые объекты
никогда намеренно не добавляются в пакет, даже при переупаковке. Эта опция предотвращает
недостижимые объекты от немедленного удаления, оставив их в старом
упаковать, а затем удалить. Вместо этого незакрепленные недоступные объекты будут обрезаны в соответствии с
к нормальным правилам истечения срока действия со следующим мерзавец gc призыв. Видеть git-gc(1).
-d
После упаковки, если вновь созданные пакеты делают некоторые существующие пакеты избыточными, удалите
избыточные пакеты. Также запустите мерзавец чернослив для удаления лишних незакрепленных объектных файлов.
-l
Передайте параметр --local в мерзавец Pack-объекты. Посмотреть git-pack-объекты(1).
-f
Передайте параметр --no-reuse-delta в git-pack-objects, см. git-pack-объекты(1).
-F
Передайте параметр --no-reuse-object в git-pack-objects, см. git-pack-объекты(1).
-q
Передайте параметр -q в мерзавец Pack-объекты. Посмотреть git-pack-объекты(1).
-n
Не обновляйте информацию о сервере с помощью мерзавец информация о сервере обновлений. Эта опция пропускает
обновление файлов локального каталога, необходимых для публикации этого репозитория (или прямой копии
это) через HTTP или FTP. Видеть git-update-server-информация(1).
--window = , --depth =
Эти два параметра влияют на то, как объекты, содержащиеся в пакете, хранятся с помощью дельта
сжатие. Сначала объекты внутренне сортируются по типу, размеру и, необязательно.
имена и сравниваются с другими объектами в --window, чтобы увидеть, используется ли дельта
сжатие экономит место. --depth ограничивает максимальную глубину дельты; делая это слишком глубоко
влияет на производительность на стороне распаковщика, потому что необходимо применить дельта-данные
чтобы много раз добраться до нужного объекта. Значение по умолчанию для --window - 10.
и --depth - 50.
- окно-память =
Эта опция обеспечивает дополнительное ограничение поверх --window; размер окна будет
динамически уменьшать масштаб, чтобы занимать не более байтов в памяти. Это
полезно в репозиториях с сочетанием больших и маленьких объектов, чтобы не исчерпать память
с большим окном, но вы все равно сможете воспользоваться большим окном для
объекты меньшего размера. Размер может быть дополнен суффиксами «k», «m» или «g». --window-memory = 0
делает использование памяти неограниченным, что является значением по умолчанию.
--max-pack-size =
Максимальный размер каждого файла выходного пакета. Размер может быть дополнен суффиксами «k», «m» или «g».
Минимальный допустимый размер ограничен 1 МиБ. Если указано, несколько файлов пакетов могут быть
созданный. Значение по умолчанию не ограничено, если только конфигурационная переменная pack.packSizeLimit не установлена.
комплект.
-b, --write-bitmap-index
Напишите индекс растрового изображения достижимости как часть переупаковки. Это имеет смысл только тогда, когда
используется с -a или -A, так как точечные рисунки должны иметь возможность ссылаться на все достижимые объекты.
Эта опция отменяет установку pack.writeBitmaps.
--упаковать-хранимые-объекты
Включите объекты в файлы .keep при переупаковке. Обратите внимание, что мы по-прежнему не удаляем .keep
пакеты после завершения упаковки объектов. Это означает, что мы можем дублировать объекты, но это
делает этот параметр безопасным для использования при одновременных нажатиях или выборках. Этот вариант
обычно полезно только в том случае, если вы пишете растровые изображения с помощью -b или pack.writeBitmaps, поскольку
он гарантирует, что в растровом пак-файле есть необходимые объекты.
КОНФИГУРАЦИЯ
По умолчанию команда передает параметр --delta-base-offset в мерзавец Pack-объекты; это
обычно приводит к немного меньшим пакетам, но сгенерированные пакеты несовместимы с
версии Git старше версии 1.4.4. Если вам нужно поделиться своим репозиторием с такими
древние версии Git, либо напрямую, либо через тупой протокол http или rsync, тогда вы
необходимо установить для переменной конфигурации repack.UseDeltaBaseOffset значение «false» и перепаковать.
Эта опция не влияет на доступ из старых версий Git по собственному протоколу, так как
в этом случае преобразование выполняется "на лету".
Используйте git-repack онлайн через сервисы onworks.net
