Sometimes I've made an unrelated change on my branch before I've committed it, and I want to move it to another branch and commit it separately (like master). I do this:
git stash
git checkout master
git stash pop
git add <files that you want to commit>
git commit -m 'Minor feature'
git stash
git checkout topic1
git stash pop
...<resume work>...
Note the first stash
& stash pop
can be eliminated, you can carry all of your changes over to the master
branch when you checkout, but only if there are no conflicts. Also if you are creating a new branch for the partial changes you will need the stash.
You can simplify it assuming no conflicts and no new branch:
git checkout master
git add <files that you want to commit>
git commit -m 'Minor feature'
git checkout topic1
...<resume work>...
Stash not even needed...