When working on a large codebase or a codebase with many developers working on new features, there may come a time when you want to merge specific files from a branch rather than a whole commit or all the changes on the branch. Thankfully, this is easy to do!
To merge specific files from a branch, use
git checkout branch-name file-name. For example:
git checkout develop src/somefile.js src/somefile2.js
To break this down, we're merging
somefile2.js from develop branch and merging it into our current active branch. So, as you can see, this is both simple and powerful!
Cherry-picking from a branch is different in that this merges specific files only, whereas cherry-picking merges a specific commit and the changes associated with that commit.
To cherry-pick from a branch, use
git cherry-pick e26ad04 where
e26ad04 is your commit ID.
In general, I would recommend cherry-picking your commits or attempt a standard merge, but if you require a bit more granular control, then it's possible, and simple, to merge specific files into a branch using git.
If you found this useful or if you have any feedback or questions, feel free to follow or comment on Twitter.