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.53.0 → 2.54.0 no changes
-
2.52.0
2025-11-17
- 2.43.1 → 2.51.2 no changes
-
2.43.0
2023-11-20
- 2.39.1 → 2.42.4 no changes
-
2.39.0
2022-12-12
- 2.34.1 → 2.38.5 no changes
-
2.34.0
2021-11-15
- 2.18.1 → 2.33.8 no changes
-
2.18.0
2018-06-21
- 2.16.6 → 2.17.6 no changes
-
2.15.4
2019-12-06
- 2.14.6 no changes
-
2.13.7
2018-05-22
- 2.10.5 → 2.12.5 no changes
-
2.9.5
2017-07-30
- 2.7.6 → 2.8.6 no changes
-
2.6.7
2017-05-05
- 2.5.6 no changes
-
2.4.12
2017-05-05
- 2.2.3 → 2.3.10 no changes
-
2.1.4
2014-12-17
-
2.0.5
2014-12-17
SYNOPSIS
git send-pack [--mirror] [--dry-run] [--force] [--receive-pack=<git-receive-pack>] [--verbose] [--thin] [--atomic] [--[no-]signed | --signed=(true|false|if-asked)] [<värd>:]<katalog> (--all | <ref>…)
BESKRIVNING
Vanligtvis används i stället git push, som är ett omslag på högre nivå för det här kommandot. Se git-push[1].
Anropar git-receive-pack på ett eventuellt fjärrkodförråd och uppdaterar det från det aktuella kodförrådet, och skickar namngivna referenser.
ALTERNATIV
- --receive-pack=<git-receive-pack>
-
Sökväg till programmet git-receive-pack på fjärrsidan. Ibland användbart vid push-överföring till ett fjärrkodförråd via ssh, och du inte har programmet i en katalog på standard $PATH:en.
- --exec=<git-receive-pack>
-
Samma som --receive-pack=<git-receive-pack>.
- --all
-
I stället för att explicit ange vilka referenser som ska uppdateras, uppdatera alla huvuden som finns lokalt.
- --stdin
-
Ta listan med referenser från stdin, en per rad. Om det finns referenser angivna på kommandoraden utöver detta alternativ, bearbetas referenserna från stdin efter de på kommandoraden.
Om
--stateless-rpcanges tillsammans med detta alternativ måste listan över referenser vara i paketformat (pkt-line). Varje referens måste finnas i ett separat paket, och listan måste avslutas med ett tömningspaket. - --dry-run
-
Gör allt utom att faktiskt skicka uppdateringarna.
- --force
-
Vanligtvis vägrar kommandot att uppdatera en fjärrreferens som inte är en förfader till den lokala referens som användes för att skriva över den. Denna flagga inaktiverar kontrollen. Det betyder att fjärrkodförrådet kan förlora incheckningar; använd den med försiktighet.
- --verbose
-
Kör utförligt.
- --thin
-
Skicka ett "tunt" paket, som registrerar objekt i deltakodad form baserat på objekt som inte ingår i paketet för att minska nätverkstrafiken.
- --atomic
-
Använd en atomär transaktion för att uppdatera referenserna. Om någon av referenserna misslyckas med att uppdateras kommer hela push-processen att misslyckas utan att några referenser ändras.
- --signed
- --no-signed
- --signed=(true|false|if-asked)
-
GPG-signera push-begäran för att uppdatera referenser på mottagarsidan, så att den kan kontrolleras av krokar och/eller loggas. Om
falseeller--no-signedgörs inget signeringsförsök. Omtrueeller--signedmisslyckas push-begäran om servern inte stöder signerade push-begäranden. Om värdet ärif-asked, signera endast om servern stöder signerade push-begäranden. Push-begäran misslyckas också om det faktiska anropet tillgpg--signmisslyckas. Se git-receive-pack[1] för detaljer på mottagarsidan. - --push-option=<sträng>
-
Skicka den angivna strängen som ett push-alternativ för tolkning av krokar på serversidan. Om servern inte stöder push-alternativ returneras ett fel. Se git-push[1] och githooks[5] för mer information.
- <värd>
-
En fjärrvärd för att hysa kodförrådet. När denna del anges anropas git-receive-pack via ssh.
- <katalog>
-
Kodförrådet som ska uppdateras.
- <ref>…
-
Fjärrreferenserna att uppdatera.
SPECIFIERING AV REFERENSERNA
Det finns tre sätt att ange vilka referenser som ska uppdateras på fjärrsidan.
Med flaggan --all överförs alla referenser som finns lokalt till fjärrsidan. Du kan inte ange någon <ref> om du använder denna flagga.
Utan --all och utan någon <ref> uppdateras de huvuden som finns både på den lokala sidan och på fjärrsidan.
När ett eller flera <ref> anges explicit (antingen på kommandoraden eller via --stdin), kan det vara antingen ett enda mönster, eller ett par sådana mönster separerade med ett kolon ":" (detta betyder att ett referensnamn inte kan innehålla ett kolon). Ett enda mönster <namn> är bara en förkortning för <namn>:<namn>.
Varje mönsterpar består av källsidan (före kolon) och destinationssidan (efter kolon). Vilken referens som ska skickas bestäms genom att hitta en matchning som matchar källsidan, och var den skickas bestäms genom att använda destinationssidan. Reglerna som används för att matcha en referens är samma regler som används av git rev-parse för att matcha ett symboliskt referensnamn. Se git-rev-parse[1].
-
Det är ett fel om <src> inte exakt matchar en av de lokala referenserna.
-
Det är ett fel om <dst> matchar mer än en fjärrreferens.
-
Om <dst> inte matchar någon fjärrreferens, antingen
-
den måste börja med "refs/"; <dst> används bokstavligen som destination i det här fallet.
-
<src> == <dst> och referensen som matchade <src> får inte finnas i uppsättningen fjärrreferenser; referensen som matchade <src> lokalt används som namn på destinationen.
-
Utan --force lagras <src>-referensen på fjärren endast om <dst> inte existerar, eller om <dst> är en korrekt delmängd (d.v.s. en förfader) till <src>. Denna kontroll, känd som "snabbspolningskontroll", utförs för att undvika att av misstag skriva över fjärrreferensen och förlora andra personers incheckningar därifrån.
Med --force inaktiveras snabbspolning för alla referenser.
Valfritt, kan en <ref>-parameter prefixas med ett plustecken + för att inaktivera snabbspolning endast på den referensen.
GIT
En del av git[1]-sviten