简体   繁体   中英

Git - Merge branch develop : HEAD - N into master

I want to merge not the HEAD of my develop into the master branch but say five commits before the HEAD . How can I achieve this?

git merge actually works directly with commit IDs, so:

$ git merge a12399c

will attempt to merge that commit (and its history) with your current branch.

You can spell a commit ID with a branch name:

$ git merge develop

and the branch name resolves to the tip commit of the branch. This is what you are used to doing (and it is "better", in some sense, since the default merge commit message becomes "merge branch develop" rather than "merge commit a12399c"). But you can use a raw ID, or any other spelling for an ID, such as:

$ git merge develop~5

which uses gitrevisions syntax to name the commit to merge.

(If you're not doing the merge yourself, but rather sending pull requests, you do need a name, because you don't do the merge. Instead, you send a request to someone else, asking them to do the merge for you—and to do that, you tell them "use this name I have set, that points to the commit ID I would like you to merge." The main complication here is that the name must be visible to the other person. The easiest way to deal with all of this is to set up a branch name, since branch names are visible to other people.)

go to your tree and choose what point would you like to merge.

get the hash of the commit and then go to your terminal and checkout to your hash

After this, create a branch to this point, push and then open PR and merge =D

commands:

git checkout HASH_CODE
git branch NEW_MERGE_BRANCH
git push origin NEW_MERGE_BRANCH

open PR, and merge or

git checkout master
git merge --no-ff NEW_MERGE_BRANCH

solution 2

git reset --soft HEAD@{5}
git branch NEW_MERGE_BRANCH
git push origin NEW_MERGE_BRANCH

git checkout master
git merge --no-ff NEW_MERGE_BRANCH

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM