Git: Cherry-Pick zur Arbeitskopie ohne Commit

187

Ich habe mehrere Filialen, in denen ich bestimmte Commits behalte, die ich ab und zu auf meine Arbeitskopie anwenden möchte. Anfangs habe ich versucht, Kirschen zu pflücken, aber ich möchte das Commit später nicht im Zielzweig haben.

Also habe ich cherry-pick+ gemachtreset HEAD~1 --soft

Gibt es etwas Einfacheres wie das Pflücken von Kirschen nur für Arbeitskopien?

schoetbi
quelle
4
Sie haben das '-n'-Flag, was "kein Commit" bedeutet. Siehe hier: git-scm.com/docs/git-cherry-pick
Igal S.
4
Für eine Reihe von Commitsgit cherry-pick HEAD..<AwesomeBranch> -n
schoetbi

Antworten:

330

Verwenden Sie das Flag '-n' für die Kirschernte, bei der es sich um "no commit" handelt.

Siehe hier: http://git-scm.com/docs/git-cherry-pick

git cherry-pick -n <HASH>
Igal S.
quelle
34
-nbringt das Commit in den inszenierten Bereich. Um die Bühne zu verlassen, git reset HEADwäre es notwendig.
Vishnu NK
5

Wenn Sie Terminal verwenden

git cherry-pick -n <HASH>

Wenn Sie Intellij Idea verwenden

Settings -> Version Control -> git
untick commit automatically on cherry-pick 
Ravinda Lakshan
quelle
2

Ich habe Fehler bekommen error: server/metadata/metadata-preui-prod.xml: No such file or directory

Also mache ich das jetzt

git checkout SHA -- server/metadata && git reset -- server/met adata

Alt

git show SHA -- file1.txt file2.txt | git apply -

oder alle Dateien von SHA

git show SHA | git apply -

Wie kann ich nur Änderungen an bestimmten Dateien auswählen?

Rofrol
quelle
1

Für IntelliJ-Benutzer

Einstellungen> Versionskontrolle> Git: Deaktivieren Sie Commit automatisch bei Cherry-Pick

Geben Sie hier die Bildbeschreibung ein

Trayan Momkov
quelle