Zoeken…
Syntaxis
- git am [--signoff] [--keep] [- [no-] keep-cr] [- [no-] utf8] [--3way] [--interactive] [--committer-date-is -author-date] [--ignore-date] [--ignore-space-change | --ignore-whitespace] [--whitespace = <option>] [-C <n>] [-p <n>] [--directory = <dir>] [--exclude = <path>] [- include = <pad>] [--reject] [-q | --quiet] [- [no-] schaar] [-S [<keyid>]] [--patch-format = <format>] [(<mbox> | <Maildir>) ...]
- git am (--continue | --skip | --abort)
parameters
Parameter | Details |
---|---|
(<Mbox> | <Maildir>) ... | De lijst met mailboxbestanden om patches te lezen. Als u dit argument niet opgeeft, wordt de opdracht gelezen uit de standaardinvoer. Als u mappen opgeeft, worden deze behandeld als Maildirs. |
-s, - afmelding | Voeg een Signed-off-by: regel toe aan het commit bericht, gebruik de committer identiteit van jezelf. |
- q, - stil | Wees stil. Alleen printfoutmeldingen. |
-u, --utf8 | Geef -u vlag door om git mailinfo te git mailinfo . Het voorgestelde COMMIT-logbericht uit de e-mail wordt opnieuw gecodeerd in UTF-8-codering (configuratievariabele i18n.commitencoding kan worden gebruikt om de voorkeurscodering van het project op te geven als het geen UTF-8 is). U kunt --no-utf8 gebruiken om dit te overschrijven. |
--no-utf8 | Geef -n vlag door om mailinfo te verzenden. |
-3, - weg | Als de patch niet netjes wordt aangebracht, valt u terug op 3-weg samenvoegen als de patch de identiteit van blobs registreert waarop deze moet worden toegepast en we die blobs lokaal beschikbaar hebben. |
--ignore-date, --ignore-space-change, --ignore-whitespace, --whitespace = <option>, -C <n>, -p <n>, --directory = <dir>, - exclude = <pad>, --include = <pad>, --reject | Deze vlaggen worden doorgegeven aan het git apply-programma dat de patch toepast. |
--patch-formaat | Standaard zal de opdracht proberen het patch-formaat automatisch te detecteren. Met deze optie kan de gebruiker de automatische detectie omzeilen en het patchformaat specificeren dat de patch (s) moet interpreteren. Geldige formaten zijn mbox , stgit , stgit-series en hg . |
-i, - interactief | Ren interactief. |
--committer-date-is-auteur-date | Standaard registreert de opdracht de datum uit het e-mailbericht als de datum van de commit-auteur en gebruikt het tijdstip van het maken van de commit als de datum van de committer. Hierdoor kan de gebruiker liegen over de datum van de committer door dezelfde waarde te gebruiken als de datum van de auteur. |
--ignore-date | Standaard registreert de opdracht de datum uit het e-mailbericht als de datum van de commit-auteur en gebruikt het tijdstip van het maken van de commit als de datum van de committer. Hierdoor kan de gebruiker liegen over de datum van de auteur door dezelfde waarde te gebruiken als de datum van de committer. |
--overspringen | Sla de huidige patch over. Dit is alleen zinvol wanneer een afgebroken patch opnieuw wordt gestart. |
-S [<keyid>], --gpg-sign [= <keyid>] | GPG-teken verbindt zich. |
- ga door, -r, - opgelost | Na een patchfout (bijvoorbeeld een conflicterende patch proberen toe te passen), heeft de gebruiker deze handmatig toegepast en slaat het indexbestand het resultaat van de applicatie op. Maak een commit met behulp van het auteurschap en de commit-log geëxtraheerd uit het e-mailbericht en het huidige indexbestand, en ga verder. |
--resolvemsg = <msg> | Wanneer een patch optreedt, <msg> wordt naar het scherm voor het verlaten. Dit vervangt het standaardbericht dat u informeert om --continue of --skip te gebruiken om de fout te verwerken. Dit is uitsluitend voor intern gebruik tussen git rebase en git am . |
--abort | Herstel de oorspronkelijke vertakking en beëindig de patchbewerking. |
Een patch maken
Om een patch te maken, zijn er twee stappen.
- Breng uw wijzigingen aan en leg ze vast.
- Voer
git format-patch <commit-reference>
uit om alle commits sinds de commit <commit-reference> (niet inbegrepen) in patchbestanden te converteren.
Als bijvoorbeeld patches moeten worden gegenereerd van de laatste twee commits:
git format-patch HEAD~~
Dit zal 2 bestanden creëren, één voor elke commit sinds HEAD~~
, zoals dit:
0001-hello_world.patch
0002-beginning.patch
Patches aanbrengen
We kunnen git apply some.patch
om de wijzigingen van het .patch
bestand op je huidige werkmap toe te passen. Ze zullen niet worden opgevoerd en moeten worden gecommitteerd.
Gebruik om een patch als een commit toe te passen (met zijn commit-bericht)
git am some.patch
Alle patch-bestanden op de structuur toepassen:
git am *.patch
Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow