A command-line tool that makes git easier to use with GitHub.
Перейти к файлу
Mislav Marohnić 0520fab1b3 hub 2.5.0 2018-07-07 15:08:06 +02:00
.ctags.d Rename `ctags` file for compatibility with universal-ctags 2018-06-06 14:00:17 +02:00
cmd Avoid `copy` when making a subslice 2018-05-29 12:31:14 +02:00
commands Have `ci-status` also query Checks API 2018-07-07 14:37:41 +02:00
coverage Measure code coverage between tests 2018-06-07 14:44:56 +02:00
etc Have `ci-status` also query Checks API 2018-07-07 14:37:41 +02:00
features Have `ci-status` also query Checks API 2018-07-07 14:37:41 +02:00
fixtures fmt 2018-06-12 00:36:41 +02:00
git No commit signature in default pull request message 2018-01-29 22:40:36 +01:00
github Have `ci-status` also query Checks API 2018-07-07 14:37:41 +02:00
script Test install script in CI 2018-06-14 12:04:31 +02:00
share/man/man1 Ensure all custom commands are listed in docs and shell completions 2018-07-06 22:25:22 +02:00
ui spelling: indicate 2017-11-08 02:38:45 +00:00
utils Add relative date format to `issue` output 2016-08-16 17:29:41 +02:00
vendor Migrate from gopkg.in/yaml.v1 to gopkg.in/yaml.v2 2018-06-15 00:21:54 -06:00
version hub 2.5.0 2018-07-07 15:08:06 +02:00
.agignore Ignore `bundle/` directory when searching 2018-02-21 13:40:34 +01:00
.gitattributes Enforce unix eol in bash script files 2017-09-02 20:55:54 +01:00
.gitignore Avoid `dep` clashing with Bundler 2018-01-29 20:59:23 +01:00
.travis.yml Avoid running `publish-release` multiple times per tag 2018-06-07 12:16:58 +02:00
CODE_OF_CONDUCT.md Improve contact email, part 2 2017-08-28 21:47:08 +02:00
CONTRIBUTING.md Remove outdated instructions about the CLA 2018-06-15 17:55:29 +02:00
Gemfile Include all man pages in packaged releases 2016-01-25 22:49:38 +11:00
Gemfile.lock Update Sinatra for Ruby 2.4 compatibility 2018-06-08 21:05:14 +02:00
Gopkg.lock Migrate from gopkg.in/yaml.v1 to gopkg.in/yaml.v2 2018-06-15 00:21:54 -06:00
Gopkg.toml Migrate from gopkg.in/yaml.v1 to gopkg.in/yaml.v2 2018-06-15 00:21:54 -06:00
LICENSE MIT 2009-12-08 02:13:06 -08:00
Makefile Remove obsolete build steps 2018-06-08 20:57:27 +02:00
README.md Remove instructions about Chocolatey on Windows 2018-07-07 15:07:27 +02:00
Vagrantfile Use Go 1.4.2 2015-04-12 13:57:05 -07:00
cucumber.yml Detect tmux and run shell completion tests 2013-11-14 16:05:56 +01:00
main.go Enforce go1.8+ via build flags too 2017-05-17 13:34:13 +02:00

README.md

git + hub = github

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.

$ hub clone rtomayko/tilt

# expands to:
$ git clone git://github.com/rtomayko/tilt.git

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.

See Usage documentation for the list of all commands and their arguments.

Installation

Dependencies:

  • git 1.7.3 or newer

Homebrew

hub can be installed through Homebrew on macOS:

$ brew install hub
$ hub version
git version 1.7.6
hub version 2.2.3

Windows

hub can be installed through Scoop on Windows:

> scoop install hub

Fedora Linux

On Fedora you can install hub through DNF:

$ sudo dnf install hub
$ hub version
git version 2.9.3
hub version 2.2.9

Arch Linux

On Arch Linux you can install hub from official repository:

$ sudo pacman -S hub

Standalone

hub can be easily installed as an executable. Download the latest compiled binaries and put it anywhere in your executable path.

Source

With your GOPATH already set up:

$ go get github.com/github/hub
$ cd "$GOPATH"/src/github.com/github/hub
$ make install prefix=/usr/local

Prerequisites for compilation are:

  • make
  • Go 1.8+
  • Ruby 1.9+ with Bundler - for generating man pages

Aliasing

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.

hub alias displays instructions for the current shell. With the -s flag, it outputs a script suitable for eval.

You should place this command in your .bash_profile or other startup script:

eval "$(hub alias -s)"

PowerShell

If you're using PowerShell, you can set an alias for hub by placing the following in your PowerShell profile (usually ~/Documents/WindowsPowerShell/Microsoft.PowerShell_profile.ps1):

Set-Alias git hub

A simple way to do this is to run the following from the PowerShell prompt:

Add-Content $PROFILE "`nSet-Alias git hub"

Note: You'll need to restart your PowerShell console in order for the changes to be picked up.

If your PowerShell profile doesn't exist, you can create it by running the following:

New-Item -Type file -Force $PROFILE

Shell tab-completion

hub repository contains tab-completion scripts for bash, zsh and fish. These scripts complement existing completion scripts that ship with git.

Installation instructions

Meta