Currenttly, git feature publish is accturaly an alias to git push which I do not think it is a correct behavior of publish. I think publish should mean that the work in feature branch has reached a state of workable but not yet been finished and is ready to be published into develop, but the original feature branch should still be keeped for further development.
git feature publish
Under this concept, the git flow feature publish should be a combination of the follwing comands.
git flow feature publish
git co develop
git merge --no-ff feature/feature-1
git co feature/feature-1
git merge --no-ff develop
A better name for the current behavior of "publish" might be "share", i.e. git flow feature share pushes the current feature branch to origin so that others can join in the development of the feature.
git flow feature share