Creates new remotes if needed and fetches objects before cherry-picking. $ git cherry-pick http://github.com/mislav/REPO/commit/SHA > git remote add -f mislav git://github.com/mislav/REPO.git > git cherry-pick SHA
A remote must be an existing repo on GitHub. $ git fetch mislav > git remote add mislav git://github.com/mislav/REPO.git > git fetch mislav
If the remote begins with a . or /, it's probably a local path and not a github repo.
…ub" gem If users keep the gem installed, they have a chance to be notified of updates and they can refresh their standalone script. Also, executables in ~/bin should have precedence over gem executables, so no need to uninstall.
…epo issues`) New abilities: $ hub compare -> When on a branch that tracks "remotebranch", for example, this opens "github.com/user/repo/compare/remotebranch". In effect if the tracked branch is not "master". $ hub browse reque issues -> open http://github.com/user/resque/issues $ hub browse -> When on a branch that tracks "remotebranch", for example, this opens "github.com/user/repo/tree/remotebranch". In effect if the tracked branch is not "master". $ hub browse -- commits -> open http://github.com/user/repo/commits/master If this branch is tracking a remote branch: -> open http://github.com/user/repo/commits/remotebranch Supported subpages: - "tree" (default) - "wiki" - "commits" - "issues", "network", "downloads" or any other arbitrary string is simply appended to URL path
…ables Fake `git` and `open` executables are pushed to PATH in testing and error out when invoked. This is because there are tests that shell out to `git init` and `git clone`, or open the browser, and bugs and failures in these tests would previously cause them to poke around the system uncontrolled.
tests now simulate ruby platform and commands being present or missing on the system.
Less juggling of constants, more ruby methods. Information that requires shelling out (e.g. GitHub username, token, repo name ...) is now loaded on demand, meaning no shelling out for commands that don't need it. Tests are now safer; they are prevented from shelling out to get info. All test data is stubbed. New `github_url` method builds needed URLs while keeping sensible defaults. Commands that open the browser (`compare`, `browse`) now share a bit of underlying implementation and recognize the same flags (`-p`, `-u`).
Fixed a problem in the ronn file this caused.
Uses open(1) if on OS X, xdg-open(1) or cygstart(1) if either is available, and prefers $BROWSER above all else.
This command allows you to view a compare view in the browser from a START to an END commit. Example: hub compare AWESOME_PATCH...MASTER
Usage example: $ git fork (forks "defunkt/hub" on GitHub) (git remote add mislav firstname.lastname@example.org:mislav/hub.git) new remote: mislav Use `git fork --no-remote` to skip adding the new remote. Tests use Webmock for stubbing out HTTP requests: $ gem install webmock