2012-03-20 18:16:31 +04:00
|
|
|
git + hub = github
|
|
|
|
==================
|
2009-12-08 00:21:12 +03:00
|
|
|
|
2012-03-20 18:16:31 +04:00
|
|
|
hub is a command line tool that wraps `git` in order to extend it with extra
|
|
|
|
features and commands that make working with GitHub easier.
|
2009-12-08 00:21:12 +03:00
|
|
|
|
2016-10-03 21:33:45 +03:00
|
|
|
``` sh
|
2012-03-20 18:16:31 +04:00
|
|
|
$ hub clone rtomayko/tilt
|
2009-12-08 00:21:12 +03:00
|
|
|
|
2012-03-20 18:16:31 +04:00
|
|
|
# expands to:
|
|
|
|
$ git clone git://github.com/rtomayko/tilt.git
|
2016-10-03 21:33:45 +03:00
|
|
|
```
|
2009-12-08 11:34:29 +03:00
|
|
|
|
2012-03-20 18:16:31 +04:00
|
|
|
hub is best aliased as `git`, so you can type `$ git <command>` in the shell and
|
|
|
|
get all the usual `hub` features. See "Aliasing" below.
|
2010-03-06 05:05:44 +03:00
|
|
|
|
2009-12-08 11:34:29 +03:00
|
|
|
|
2012-03-20 18:16:31 +04:00
|
|
|
Installation
|
|
|
|
------------
|
2009-12-08 11:34:29 +03:00
|
|
|
|
2012-03-20 18:16:31 +04:00
|
|
|
Dependencies:
|
2009-12-08 11:34:29 +03:00
|
|
|
|
2012-03-20 18:16:31 +04:00
|
|
|
* **git 1.7.3** or newer
|
2010-03-06 05:05:44 +03:00
|
|
|
|
2014-10-21 07:48:07 +04:00
|
|
|
#### Homebrew
|
|
|
|
|
2015-02-15 19:23:15 +03:00
|
|
|
`hub` can be installed through Homebrew:
|
2014-10-21 07:48:07 +04:00
|
|
|
|
2016-10-03 21:33:45 +03:00
|
|
|
``` sh
|
2015-02-15 19:23:15 +03:00
|
|
|
$ brew install hub
|
|
|
|
$ hub version
|
|
|
|
git version 1.7.6
|
|
|
|
hub version 2.2.0
|
2016-10-03 21:33:45 +03:00
|
|
|
```
|
2014-10-21 07:48:07 +04:00
|
|
|
|
2014-10-20 23:02:58 +04:00
|
|
|
#### Standalone
|
|
|
|
|
2015-02-15 19:23:15 +03:00
|
|
|
`hub` can be easily installed as an executable. Download the latest
|
2014-12-09 18:33:22 +03:00
|
|
|
[compiled binaries](https://github.com/github/hub/releases) and put it anywhere
|
|
|
|
in your executable path.
|
2014-10-20 23:02:58 +04:00
|
|
|
|
|
|
|
#### Source
|
|
|
|
|
2016-10-03 21:32:39 +03:00
|
|
|
To install hub from source:
|
2014-10-20 23:02:58 +04:00
|
|
|
|
2016-10-03 21:32:39 +03:00
|
|
|
``` sh
|
2014-10-20 23:02:58 +04:00
|
|
|
$ git clone https://github.com/github/hub.git
|
|
|
|
$ cd hub
|
2016-10-03 21:32:39 +03:00
|
|
|
$ make install prefix=/usr/local
|
|
|
|
```
|
2014-10-20 23:02:58 +04:00
|
|
|
|
2016-10-18 02:48:52 +03:00
|
|
|
Prerequisites for compilation are:
|
2016-08-12 00:42:54 +03:00
|
|
|
|
2016-10-03 21:32:39 +03:00
|
|
|
* `make`
|
|
|
|
* [Go 1.6+](http://golang.org/doc/install)
|
|
|
|
* Ruby 1.9+ with Bundler - for generating man pages
|
|
|
|
|
|
|
|
If you don't have `make`, Ruby, or want to skip man pages (for example, if you
|
|
|
|
are on Windows), you can build only the `hub` binary:
|
|
|
|
|
|
|
|
``` sh
|
|
|
|
$ ./script/build
|
|
|
|
```
|
|
|
|
|
|
|
|
You can now move `bin/hub` to somewhere in your PATH.
|
|
|
|
|
|
|
|
Finally, if you've done Go development before and your `$GOPATH/bin` directory
|
|
|
|
is already in your PATH, this is an alternative installation method that fetches
|
|
|
|
hub into your GOPATH and builds it automatically:
|
|
|
|
|
|
|
|
``` sh
|
2016-08-12 00:42:54 +03:00
|
|
|
$ go get github.com/github/hub
|
2016-10-03 21:32:39 +03:00
|
|
|
```
|
2016-08-12 00:42:54 +03:00
|
|
|
|
2009-12-09 04:40:45 +03:00
|
|
|
Aliasing
|
|
|
|
--------
|
2009-12-08 00:21:12 +03:00
|
|
|
|
2012-03-20 18:16:31 +04:00
|
|
|
Using hub feels best when it's aliased as `git`. This is not dangerous; your
|
|
|
|
_normal git commands will all work_. hub merely adds some sugar.
|
2009-12-08 00:21:12 +03:00
|
|
|
|
2012-03-20 22:04:01 +04:00
|
|
|
`hub alias` displays instructions for the current shell. With the `-s` flag, it
|
|
|
|
outputs a script suitable for `eval`.
|
2009-12-09 07:08:36 +03:00
|
|
|
|
2012-03-20 22:04:01 +04:00
|
|
|
You should place this command in your `.bash_profile` or other startup script:
|
2009-12-09 07:08:36 +03:00
|
|
|
|
2016-10-03 21:33:45 +03:00
|
|
|
``` sh
|
2012-03-20 22:04:01 +04:00
|
|
|
eval "$(hub alias -s)"
|
2016-10-03 21:33:45 +03:00
|
|
|
```
|
2009-12-08 12:12:53 +03:00
|
|
|
|
2012-03-20 23:08:12 +04:00
|
|
|
### Shell tab-completion
|
|
|
|
|
|
|
|
hub repository contains tab-completion scripts for bash and zsh. These scripts
|
|
|
|
complement existing completion scripts that ship with git.
|
|
|
|
|
2015-07-17 06:49:11 +03:00
|
|
|
[Installation instructions](etc)
|
|
|
|
|
2013-07-10 00:32:00 +04:00
|
|
|
* [hub bash completion](https://github.com/github/hub/blob/master/etc/hub.bash_completion.sh)
|
|
|
|
* [hub zsh completion](https://github.com/github/hub/blob/master/etc/hub.zsh_completion)
|
2012-03-20 23:08:12 +04:00
|
|
|
|
2009-12-08 08:28:38 +03:00
|
|
|
Meta
|
|
|
|
----
|
2009-12-08 00:21:12 +03:00
|
|
|
|
2013-07-10 00:32:00 +04:00
|
|
|
* Home: <https://github.com/github/hub>
|
|
|
|
* Bugs: <https://github.com/github/hub/issues>
|
|
|
|
* Authors: <https://github.com/github/hub/contributors>
|
2012-03-20 18:16:31 +04:00
|
|
|
|
|
|
|
### Prior art
|
2009-12-08 11:18:55 +03:00
|
|
|
|
2012-03-20 18:16:31 +04:00
|
|
|
These projects also aim to either improve git or make interacting with
|
|
|
|
GitHub simpler:
|
2009-12-08 11:18:55 +03:00
|
|
|
|
2012-03-20 18:16:31 +04:00
|
|
|
* [eg](http://www.gnome.org/~newren/eg/)
|
|
|
|
* [github-gem](https://github.com/defunkt/github-gem)
|