Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
- 2.45.2 → 2.47.1 no changes
- 2.45.1 04/29/24
- 2.45.0 no changes
- 2.44.2 no changes
- 2.44.1 04/19/24
- 2.44.0 no changes
- 2.43.5 no changes
- 2.43.4 04/19/24
- 2.43.1 → 2.43.3 no changes
- 2.43.0 no changes
- 2.42.3 no changes
- 2.42.2 04/19/24
- 2.42.1 no changes
- 2.42.0 no changes
- 2.41.2 no changes
- 2.41.1 04/19/24
- 2.41.0 no changes
- 2.40.3 no changes
- 2.40.2 04/19/24
- 2.40.1 no changes
- 2.40.0 no changes
- 2.39.5 no changes
- 2.39.4 04/19/24
- 2.38.1 → 2.39.3 no changes
- 2.38.0 10/02/22
- 2.34.1 → 2.37.7 no changes
- 2.34.0 11/15/21
- 2.21.1 → 2.33.8 no changes
- 2.21.0 no changes
- 2.19.3 → 2.20.5 no changes
- 2.19.2 11/21/18
- 2.11.4 → 2.19.1 no changes
- 2.10.5 09/22/17
- 2.1.4 → 2.9.5 no changes
- 2.0.5 12/17/14
RESUMO
git-upload-pack [--[no-]strict] [--timeout=<n>] [--stateless-rpc] [--advertise-refs] <diretório>
DESCRIÇÃO
Chamado através do comando git fetch-pack, aprende quais os objetos faltam no outro lado e os envia após empacotá-los.
Normalmente, este comando não é invocado diretamente pelo usuário final. A interface do usuário do protocolo está no lado do comando git fetch-pack, e o par de programas deve ser usado para enviar as atualizações para um repositório remoto. Para operações de envio, consulte o comando git send-pack.
OPÇÕES
- --[no-]strict
-
Não tente <diretório>/.git/ caso o <diretório> não seja um diretório Git.
- --timeout=<n>
-
Interrompa a transferência após <n> segundos de inatividade.
- --stateless-rpc
-
Executar apenas um único ciclo de leitura e gravação com o stdin e o stdout. Isso se encaixa no modelo de processamento de solicitações HTTP POST, onde um programa pode ler a solicitação, gravar uma resposta e encerrar.
- --http-backend-info-refs
-
Usado por git-http-backend[1] para atender às solicitações
$GIT_URL/info/refs?service=git-upload-pack
. Consulte "Clientes Inteligentes" no gitprotocol-http[5] e "Transporte HTTP" em gitprotocol-v2[5]. Também é compreendido por git-receive-pack[1]. - <diretório>
-
O repositório de onde a sincronizaremos.
VARIÁVEIS DO AMBIENTE
-
GIT_PROTOCOL
-
Variável interna usada para o aperto de mão (handshaking) no protocolo "wire". Os administradores do servidor podem precisar configurar alguns transportes para permitir que essa variável seja aprovada. Consulte git[1].
-
GIT_NO_LAZY_FETCH
-
When cloning or fetching from a partial repository (i.e., one itself cloned with
--filter
), the server-sideupload-pack
may need to fetch extra objects from its upstream in order to complete the request. By default,upload-pack
will refuse to perform such a lazy fetch, becausegit fetch
may run arbitrary commands specified in configuration and hooks of the source repository (andupload-pack
tries to be safe to run even in untrusted.git
directories).This is implemented by having
upload-pack
internally set theGIT_NO_LAZY_FETCH
variable to1
. If you want to override it (because you are fetching from a partial clone, and you are sure you trust it), you can explicitly setGIT_NO_LAZY_FETCH
to0
.
SEGURANÇA
Most Git commands should not be run in an untrusted .git
directory (see the section SECURITY
in git[1]). upload-pack
tries to avoid any dangerous configuration options or hooks from the repository it’s serving, making it safe to clone an untrusted directory and run commands on the resulting clone.
For an extra level of safety, you may be able to run upload-pack
as an alternate user. The details will be platform dependent, but on many systems you can run:
git clone --no-local --upload-pack='sudo -u nobody git-upload-pack' ...
GIT
Parte do conjunto git[1]