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

НАЗВА

git-upload-archive - Надіслати архів назад до git-archive

СИНОПСИС

git upload-archive <сховище>

ОПИС

Викликається командою git archive --remote та надсилає згенерований архів на інший кінець через протокол Git.

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

БЕЗПЕКА

Щоб захистити конфіденційність об’єктів, які були видалені з історії, але, можливо, ще не були очищені, git-upload-archive уникає обслуговування архівів для комітів та дерев, які недоступні з посилань репозиторію. Однак, оскільки обчислення досяжності об’єктів є обчислювально ресурсоємним, git-upload-archive реалізує суворіший, але легший для перевірки набір правил:

  1. Клієнти можуть запитувати коміт або дерево, на яке безпосередньо вказує посилання. Наприклад, git archive --remote=origin v1.0.

  2. Клієнти можуть запитувати піддерево всередині коміту або дерева, використовуючи синтаксис ref:path. Наприклад, git archive --remote=origin v1.0:Documentation.

  3. Клієнти можуть не використовувати інші sha1-вирази, навіть якщо кінцевий результат досяжний. Наприклад, ні відносний коміт, як-от master^, ні літерал sha1, як-от abcd1234, не дозволені, навіть якщо результат досяжний з посилань.

Зверніть увагу, що правило 3 забороняє багато випадків, які не мають жодних наслідків для конфіденційності. Ці правила можуть бути змінені в майбутніх версіях git, і сервер, до якого здійснюється доступ за допомогою git archive --remote, може дотримуватися або не дотримуватися саме цих правил.

Якщо параметр конфігурації uploadArchive.allowUnreachable має значення true, ці правила ігноруються, і клієнти можуть використовувати довільні вирази sha1. Це корисно, якщо вам не байдуже на конфіденційність недоступних об’єктів, або якщо ваша база даних об’єктів вже публічно доступна для доступу через не-smart-http.

ОПЦІЇ

<repository>

Репозиторій, з якого потрібно отримати tar-архів.

GIT

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