On my machine running on Git 2.7.1, the documentation for git subtree push says
Does it provide split (see below) with <prefix> and then does git push to dump the result to the repository and ref. This can be used to push your subtree into different branches of the remote repository.
There is no mention of branches in the documentation for git subtree , and none of the cases where branches are mentioned are suitable for your use.
Reading between lines that look like a source branch is all you checked:
git checkout somebranch git subtree push --prefix server heroku master
And indeed, you have confirmed in the comments that this works.
Chris source share