datasift/gitflow — pull request #12 by nicktelford (2012-05-24 12:30:24+00:00)
Title: Add "feature submit" to submit a Pull Request

Instead of merging and pushing features directly yourself, we want to
use GitHub's powerful Pull Requests to mandate independent code-review.

A new command is added to automate submission of a feature as a Pull
Request:

git flow feature submit []

The name of the feature branch to submit is optional, with the current
feature branch (if you're on one) as the default.

A number of utility functions are also added to facilitate working with
the GitHub API:

* `github_post` - posts an authenticated request to GitHub's API.
* `github_auth_token` - gets the API OAuth2 token for GitHub. If no
token exists for the repo, the user will be prompted for
credentials required to create one and a token will be generated.
* `github_origin_repo` - extracts the GitHub name of the remote
origin (if it's a GitHub origin) in the format: /

The full submission process should have the following outcomes:

* The feature branch is pushed to `origin`
* The first time a user requires authentication for a repo, they
will be prompted for a username and password.
* The default editor will be opened for the user to enter a
summary of the feature they're submitting.
* A new Pull Request is created from the feature branch to `develop`

Outstanding work includes:

* Infer the feature description from the commit message when the
feature contains only a single (non-merge) commit.
* Infer the feature description from the history of the feature and
feature name when the feature involves many commits.