українська мова ▾ Topics ▾ Latest version ▾ git-upload-pack last updated in 2.45.1

НАЗВА

git-upload-pack - Надіслати упаковані об’єкти назад до git-fetch-pack

СИНОПСИС

git-upload-pack [--[no-]strict] [--timeout=<n>] [--stateless-rpc]
		  [--advertise-refs] <directory>

ОПИС

Викликається командою git fetch-pack, дізнається, яких об’єктів бракує на іншій стороні, та надсилає їх після пакування.

Ця команда зазвичай не викликається безпосередньо кінцевим користувачем. Інтерфейс користувача для протоколу знаходиться на стороні «git fetch-pack», а пара програм призначена для використання для отримання оновлень з віддаленого репозиторію. Щодо операцій push див. «git send-pack».

ОПЦІЇ

--[no-]strict

Не намагайтеся використовувати <directory>/.git/, якщо <directory> не є каталогом Git.

--timeout=<n>

Перервати передачу після <n> секунд бездіяльності.

--stateless-rpc

Виконувати лише один цикл читання-запису за допомогою stdin та stdout. Це відповідає моделі обробки запитів HTTP POST, де програма може прочитати запит, записати відповідь і повинна завершити роботу.

--http-backend-info-refs

Використовується git-http-backend[1] для обробки запитів $GIT_URL/info/refs?service=git-upload-pack. Див. "Розумні клієнти" в gitprotocol-http[5] та "HTTP-транспорт" в документації gitprotocol-v2[5]. Також розуміється git-receive-pack[1].

<directory>

Репозиторій для синхронізації.

НАВКОЛИШНЄ СЕРЕДОВИЩЕ

GIT_PROTOCOL

Внутрішня змінна, що використовується для встановлення зв’язку з протоколом Wire. Адміністраторам сервера може знадобитися налаштувати деякі транспорти, щоб дозволити передачу цієї змінної. Див. обговорення в git[1].

GIT_NO_LAZY_FETCH

Під час клонування або отримання даних з часткового репозиторію (тобто, самого клонованого з --filter), серверному upload-pack може знадобитися отримати додаткові об’єкти зі свого основного репозиторію, щоб завершити запит. За замовчуванням upload-pack відмовиться виконувати таку ліниву вибірку, оскільки git fetch може виконувати довільні команди, зазначені в конфігурації та перехоплювачах вихідного репозиторію (а upload-pack намагається бути безпечним для запуску навіть у ненадійних каталогах .git).

Це реалізовано шляхом внутрішнього встановлення змінної GIT_NO_LAZY_FETCH значенням 1 у upload-pack. Якщо ви хочете перевизначити це значення (оскільки ви отримуєте дані з часткового клону і впевнені, що довіряєте йому), ви можете явно встановити GIT_NO_LAZY_FETCH значенням 0.

БЕЗПЕКА

Більшість команд Git не слід виконувати в ненадійному каталозі .git (див. розділ БЕЗПЕКА в git[1]). upload-pack намагається уникнути будь-яких небезпечних параметрів конфігурації або перехоплень з репозиторію, який він обслуговує, що робить безпечним клонування ненадійного каталогу та виконання команд у результуючому клоні.

Для додаткового рівня безпеки ви можете запустити upload-pack від імені альтернативного користувача. Деталі залежатимуть від платформи, але на багатьох системах ви можете запустити:

git clone --no-local --upload-pack='sudo -u nobody git-upload-pack' ...

ДИВ. ТАКОЖ

GIT

Частина набору git[1]