I use hub[0] to accomplish some of the same things. `hub fork` creates a fork and sets up a new remote. After pushing to my fork, `hub pull-request` creates a pull request.
What git-repo really offers is a tool that integrates nicely to the git CLI (as `git-something` is also available as `git something`, so git-repo acts per default as `git repo hub…`). And then it autoconfigures the .gitconfig aliases to have the `git hub`, `git lab`, `git moo` you'd want.
So besides the fact that hub is certainly much more mature than my tool, it wouldn't be a tool I'd like to really use.
alias git=hub
in your shellrc.I think it's best to keep them separated so you know what stuff is coming from hub and what's in vanilla git instead. "git" is already synonymous enough with "GitHub" in many peoples' minds without including GitHub-specific functionality in your mental model of the command line client.