Mehrere Commits mit Cherry-Pick in Git
-
Unterschied zwischen
Git merge
undGit Cherry-Pick
-Befehl in Git -
das
Cherry-picking
Bug-Fix Commit in Git -
Mehrfaches
cherry-pick
-Commit in Git -
Verwenden Sie den Befehl
Rebase
, um gewünschte Änderungen an einem bestimmten Zweig in Git auszuwählen
Nach Abschluss unserer Verzweigungsarbeiten müssen wir in der Regel nicht mehr in die bestehenden Dateien mergen.
Wir müssen oft ein paar bestimmte Commits aus verschiedenen Zweigen erhalten, anstatt sie alle in einem bestimmten Zweig zu bearbeiten. Aus diesem Grund wird in Git der Befehl git-cherry pick
verwendet.
Unterschied zwischen Git merge
und Git Cherry-Pick
-Befehl in Git
git merge
ist genauso wie der Befehl git cherry-pick
. Der Befehl git cherry-pick
wird verwendet, um Änderungen von einem anderen Zweig in unseren gewünschten Zweig zu integrieren.
Wenn wir den Befehl merge
verwenden, dürfen wir normalerweise alle Änderungen, die im anderen Zweig vorgenommen wurden, in unseren gewünschten Zweig integrieren.
Aber auf der anderen Seite brauchen wir manchmal nur wenige Änderungen in unserer Wunschbranche. Und für diesen Zweck ist der Git-cherry-pick
-Befehl die sicherste Option.
das Cherry-picking
Bug-Fix Commit in Git
Cherry-picking
lässt sich typischerweise so erklären, dass ein Bugfix auf die frühere Version unserer Software aktualisiert wird, was bedeutet, dass nur einige explizite Bugfix-Commits aus Hunderten von Bugfixes in einem bestimmten Zweig abgerufen werden.
Verwenden Sie dann in Zukunft aus irgendeinem Grund diesen bestimmten fehlerbeseitigten Commit. Diese Anweisung oder dieser Befehl wird hauptsächlich verwendet, wenn das Team einen wichtigen Fehler in der Produktions- oder Live-Web- oder Desktop-Anwendung beheben möchte.
Mit diesem Befehl bereitet das Team die Version vor und stellt sie in der Produktions- oder Live-Umgebung bereit.
Mehrfaches cherry-pick
-Commit in Git
In einigen Fällen möchten wir uns für die Rosinenpickerei bei mehreren Commits gleichzeitig in verschiedenen Branches bewerben. Dann müssen wir zuerst beide Commits identifizieren und die folgenden Befehle darauf anwenden.
Danach kann das cherry-pick
bei den mehreren Commits durchgeführt werden, indem die Punktnotation zwischen den Zweigen A und B verwendet wird, wie unten im folgenden Befehl gezeigt:
$ git cherry-pick A..B
Nach Anwendung dieses Befehls wird commit A
nicht in den cherry-pick
aufgenommen.
Um auch commit A
zu assimilieren, können wir die folgende Syntax verwenden:
$ git cherry-pick A^..B
Commit A
sollte älter sein als commit B
. Wenn dies nicht in perfekter Ordnung ist, schlägt der verwendete Befehl fehl, und wir müssen ihn gemäß der oben angegebenen Bedingung verwenden.Verwenden Sie den Befehl Rebase
, um gewünschte Änderungen an einem bestimmten Zweig in Git auszuwählen
Wir haben eine andere Möglichkeit, die gewünschten Änderungen oder Commits in einem bestimmten Zweig auszuwählen, indem wir den Befehl rebase
in Git verwenden. Wir können den Befehl mit der Option onto
in dieser Methode rebase
.
Wir können git rebase --onto
in zwei Arten von Fällen verwenden:
- Die erste Bedingung ist, dass wir einen Zweig haben, der seinen übergeordneten Zweig in einem Repository ersetzen möchte.
- Zweitens wollen wir sofort einige Commits aus unserem derzeitigen Zweig in einem Repository entfernen.
Nehmen wir an, dass unser Zweig der Zweig ist, der bei D
endet, und dies ist der gewünschte Zweig, auf den wir C
-Y
verschieben möchten.
git reset --hard Y
git rebase --onto A B
Es hilft uns, von dem bestimmten Punkt aus neu zu gründen oder uns auf das gewünschte Commit festzulegen. Wir können vollständig verwalten, was und wo in einem bestimmten Branch-Commits rebasiert werden soll.
Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.
LinkedIn