Ich habe zwei Filialen dev
& master
. Ich verwende Bitbucket.
Ich muss einen Teil des Commits aus dem Entwicklungszweig herauspicken.
Dann muss eine Pull-Anfrage für erstellt werden master
Zweig.
Als meine dev
Die Umgebung hat so viele Dinge, von denen einige nicht direkt miteinander verschmelzen können master
.
Nehmen Sie also Commit , aus dev
Zweig. Nimm sie zusammen. Erstellen Sie eine Pull-Anfrage für die Zusammenführung master
Zweig.
Sie können verwenden
git cherry-pick <commit id>
um bestimmte Commits auszuwählen
Um den Zyklus zu schließen und eine PR vom Master zu erstellen. Wir können die folgenden Schritte ausführen:
Gehen Sie davon aus, dass Sie auf der master
Zweig:
git checkout -b myNewBranch // this will create a new branch named myNewBranch
git cherry-pick <commitID 1> // this will take the commit with the commit ID 1 and
// attempt to place it on top of the master branch.
// Note however, there might be conflicts to resolve
git cherry-pick <commitID 2> // this will take the commit with the commit ID 2 and place on top of the master branch
git push origin/<some branch name> // will push the changes to remote. Usually origin/<local branch name>
Anschließend können Sie je nach Plattform eine Pull-Anfrage stellen. Es kann also über die GUI erfolgen. Sei es auf einer GitHub-Plattform oder DevAzure usw. In Ihrem Fall über die BitBucket-GUI.
Randbemerkung: Die obigen Schritte dienen der Einfachheit. Es ist auch möglich, den Rosinenpick mit einer Linie zu machen. Etwa so:
git cherry-pick <commitID 1> <commitID 2>
Fork original-repo as "your-repo"
git clone your-repo
cd your-repo
git checkout dev
git pull //to get all your commits to local
git checkout master
git pull //to make sure branch is upto date
git cherry-pick commit-id
git push //commits the cherry-picked commits to the master branch of forked repo
Raise PR from Forked repo "your-repo" master branch to "original-repo" master branch
Durch die Verwendung von GIT können Sie bestimmte Commits anhand der Commit-ID auswählen, unabhängig vom Zweig. Zum Beispiel: git Cherry-pick
– Verrückt
8. Juli 2020 um 6:27
So danach
git checkout dev
,git cherry-pick <id 1>
,git cherry-pick <id 2>
. Wie erstellt man PR für diejenigen, die sich die Hauptniederlassung aussuchen?– Mächtig
8. Juli 2020 um 6:30 Uhr
Sie können in Ihrem Hauptzweig einen neuen Zweig erstellen. Cherry wählt die gewünschten Commits aus und erstellt dann eine PR für diesen neuen Zweig. In Ihrem Fall enthält es Ihre ausgewählten Commits
– Verrückt
8. Juli 2020 um 6:31 Uhr
Also werde ich einen neuen Zweig von dev erstellen, diese Commits auswählen und diesen Zweig zusammenführen oder eine Pull-Anfrage für den Master erstellen?
– Mächtig
8. Juli 2020 um 6:32
Es ist keine Zusammenführung erforderlich. Cherry-Pick nimmt die gewünschten Commits und platziert sie auf Ihrem Master. Anschließend können Sie diese Commits an den neuen Zweig übertragen und eine PR erstellen
– Verrückt
8. Juli 2020 um 6:33