Einrichtung und Konfiguration
Projekte holen und erstellen
Grundlegende Snapshots
Branching und Merging
Projekte teilen und aktualisieren
Inspektion und Vergleich
Patching
Debugging
Externe Systeme
Server-Administration
Anleitungen
- gitattributes
- Konventionen der Kommandozeile
- Tägliches Git
- Häufig gestellte Fragen (FAQ)
- Glossar
- Hooks
- gitignore
- gitmodules
- Revisionen
- Submodule
- Tutorial
- Workflows
- Alle Anleitungen...
Administration
Plumbing-Befehle
-
2.52.0
2025-11-17
- 2.45.2 → 2.51.2 keine Änderungen
-
2.45.1
2024-04-29
- 2.45.0 keine Änderungen
- 2.44.2 → 2.44.4 keine Änderungen
-
2.44.1
2024-04-19
- 2.44.0 keine Änderungen
- 2.43.5 → 2.43.7 keine Änderungen
-
2.43.4
2024-04-19
- 2.43.1 → 2.43.3 keine Änderungen
- 2.43.0 keine Änderungen
- 2.42.3 → 2.42.4 keine Änderungen
-
2.42.2
2024-04-19
- 2.42.1 keine Änderungen
- 2.42.0 keine Änderungen
- 2.41.2 → 2.41.3 keine Änderungen
-
2.41.1
2024-04-19
- 2.41.0 keine Änderungen
- 2.40.3 → 2.40.4 keine Änderungen
-
2.40.2
2024-04-19
- 2.40.1 keine Änderungen
- 2.40.0 keine Änderungen
- 2.39.5 keine Änderungen
-
2.39.4
2024-04-19
- 2.38.1 → 2.39.3 keine Änderungen
-
2.38.0
2022-10-02
- 2.34.1 → 2.37.7 keine Änderungen
-
2.34.0
2021-11-15
- 2.21.1 → 2.33.8 keine Änderungen
- 2.21.0 keine Änderungen
- 2.19.3 → 2.20.5 keine Änderungen
-
2.19.2
2018-11-21
- 2.11.4 → 2.19.1 keine Änderungen
-
2.10.5
2017-09-22
- 2.1.4 → 2.9.5 keine Änderungen
-
2.0.5
2014-12-17
SYNOPSIS
git-upload-pack [--[no-]strict] [--timeout=<n>] [--stateless-rpc]
[--advertise-refs] <directory>
BESCHREIBUNG
Wird von git fetch-pack aufgerufen, erfährt, welche Objekte die andere Seite vermisst, und sendet sie nach dem Verpacken.
Dieser Befehl wird normalerweise nicht direkt vom Endbenutzer aufgerufen. Die Benutzeroberfläche für das Protokoll befindet sich auf der Seite von git fetch-pack, und das Programm-Paar dient dazu, Updates von einem Remote-Repository abzurufen. Für Push-Operationen siehe git send-pack.
OPTIONEN
- --strict
- --no-strict
-
Versuche nicht, <directory>/.git/ zu verwenden, wenn <directory> kein Git-Repository ist.
- --timeout=<n>
-
Unterbreche die Übertragung nach <n> Sekunden Inaktivität.
- --stateless-rpc
-
Führe nur einen einzelnen Lese-Schreib-Zyklus mit stdin und stdout durch. Dies passt zum HTTP POST-Anfragemodell, bei dem ein Programm die Anfrage lesen, eine Antwort schreiben und beenden muss.
- --http-backend-info-refs
-
Wird von git-http-backend[1] verwendet, um Anfragen für $GIT_URL/info/refs?service=git-upload-pack zu bedienen. Siehe "Smart Clients" in gitprotocol-http[5] und "HTTP Transport" in der Dokumentation zu gitprotocol-v2[5]. Wird auch von git-receive-pack[1] verstanden.
- <directory>
-
Das Repository, aus dem synchronisiert werden soll.
UMGEBUNG
GIT_PROTOCOL-
Interne Variable, die für das Aushandeln des Wire-Protokolls verwendet wird. Serveradministratoren müssen möglicherweise einige Transports konfigurieren, um die Weitergabe dieser Variablen zu ermöglichen. Siehe die Diskussion in git[1].
GIT_NO_LAZY_FETCH-
Beim Klonen oder Abrufen aus einem partiellen Repository (d. h. einem, das selbst mit
--filtergeklont wurde) muss der serverseitigeupload-packmöglicherweise zusätzliche Objekte von seinem Upstream abrufen, um die Anfrage abzuschließen. Standardmäßig lehntupload-packeinen solchen Lazy Fetch ab, dagit fetchbeliebige Befehle ausführen kann, die in der Konfiguration und den Hooks des Quell-Repositorys angegeben sind (undupload-packversucht, sicher zu sein, auch in nicht vertrauenswürdigen.git-Verzeichnissen ausgeführt zu werden).Dies wird implementiert, indem
upload-packintern die VariableGIT_NO_LAZY_FETCHauf1setzt. Wenn Sie dies überschreiben möchten (weil Sie aus einem partiellen Klon abrufen und sicher sind, dass Sie ihm vertrauen), können SieGIT_NO_LAZY_FETCHexplizit auf0setzen.
SICHERHEIT
Die meisten Git-Befehle sollten nicht in einem nicht vertrauenswürdigen .git-Verzeichnis ausgeführt werden (siehe den Abschnitt SECURITY in git[1]). upload-pack versucht, gefährliche Konfigurationsoptionen oder Hooks aus dem Repository, das es bedient, zu vermeiden, was es sicher macht, ein nicht vertrauenswürdiges Verzeichnis zu klonen und Befehle auf dem resultierenden Klon auszuführen.
Für zusätzliche Sicherheit können Sie upload-pack möglicherweise als alternativer Benutzer ausführen. Die Details hängen vom System ab, aber auf vielen Systemen können Sie
git clone --no-local --upload-pack='sudo -u nobody git-upload-pack' ...
GIT
Teil der git[1] Suite