[git] How can I selectively merge or pick changes from another branch in Git?

I had the exact same problem as mentioned by you above. But I found this clearer in explaining the answer.

Summary:

  • Check out the path(s) from the branch you want to merge,

     $ git checkout source_branch -- <paths>...
    
    Hint: It also works without `--` like seen in the linked post.
    
  • or to selectively merge hunks

     $ git checkout -p source_branch -- <paths>...
    

Alternatively, use reset and then add with the option -p,

    $ git reset <paths>...
    $ git add -p <paths>...
  • Finally commit

     $ git commit -m "'Merge' these changes"
    

Examples related to git

Does the target directory for a git clone have to match the repo name? Git fatal: protocol 'https' is not supported Git is not working after macOS Update (xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools) git clone: Authentication failed for <URL> destination path already exists and is not an empty directory SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443 GitLab remote: HTTP Basic: Access denied and fatal Authentication How can I switch to another branch in git? VS 2017 Git Local Commit DB.lock error on every commit How to remove an unpushed outgoing commit in Visual Studio?

Examples related to git-merge

Abort a Git Merge Git pull - Please move or remove them before you can merge Git: How configure KDiff3 as merge tool and diff tool Git: How to pull a single file from a server repository in Git? How to resolve git error: "Updates were rejected because the tip of your current branch is behind" error: Your local changes to the following files would be overwritten by checkout Please enter a commit message to explain why this merge is necessary, especially if it merges an updated upstream into a topic branch How to merge specific files from Git branches git remove merge commit from history The following untracked working tree files would be overwritten by merge, but I don't care

Examples related to git-cherry-pick

Git Cherry-Pick and Conflicts Abort a git cherry-pick? What does cherry-picking a commit with Git mean? Merge up to a specific commit How to cherry pick from 1 branch to another How to cherry pick a range of commits and merge into another branch? Partly cherry-picking a commit with Git How can I selectively merge or pick changes from another branch in Git?

Examples related to git-patch

Create a git patch from the uncommitted changes in the current working directory How can I selectively merge or pick changes from another branch in Git?