git-req 2.0.0-rc.2

Check out merge requests from your GitLab/GitHub hosted repos with ease!
git-req-2.0.0-rc.2 is not a library.

Build Status Build status

git-req

Check out merge requests from your GitLab/GitHub hosted repos with ease!

Why?

jrdev: Hey @aru, can you verify the issue you reported is fixed by mr 17?
aru: Oh? OK.
aru switches to a browser, navigates to his org's GitLab instance, finds the project, clicks to the merge requests view, finds the MR, reads the branch name (hotfix/jrdevs_new_branch), switches back to the terminal, inputs git checkout hotfix/jrdevs_new_branch (no typos!), and starts jamming on some code.


That sucks. Too much context switching, too many clicks. You know what's easier?

$ git req 17
Switched to branch 'hotfix/jrdevs_new_branch'

That's exactly what git-req does.

Installation

Simply place the git-req executable somewhere in your $PATH. The first time you run git req <#> it will prompt you for API credentials; use a Personal Access Token (see Profile Settings > Personal Access Token in GitLab or GitHub).

Configuration

I plan on introducting a better command line API in the future to manage the assorted configuration settings. Currently they can only be managed by editing these two ini-formatted files.

$HOME/.gitreqconfig

This contains global settings. At the moment, it only domain API keys are stored here. Edit this if you have to use a new key or remove a bad one.

/path/to/project/.git/config

Internal GitHub/GitLab project IDs are cached here under the [req] block. If you change your upstream remote, you may have to edit this property.

Contributing

Contributions are welcome! I'm down for supporting other services (e.g. BitBucket). Just file a PR!

Non-binary Version

The last non-binary version of this was v1.0.0. If you don't wish to run (or compile) the Rust executable, feel free to use v1.0.0.