Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Potentially the best command line gister.

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 bin
Octocat-spinner-32 lib
Octocat-spinner-32 man
Octocat-spinner-32 .gitignore
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README.markdown
Octocat-spinner-32 Rakefile
Octocat-spinner-32 battle.png
Octocat-spinner-32 gist
Octocat-spinner-32 gist.gemspec

Gist: The Script

Works great with Gist: The Website.



$ brew install gist
$ gist -h


$ gem install gist
$ gist -h

Old school:

$ curl -s > gist &&
$ chmod 755 gist &&
$ mv gist /usr/local/bin/gist


$ sudo apt-get install ruby
$ sudo apt-get install rubygems
$ sudo apt-get install libopenssl-ruby
$ sudo gem install gist
$ sudo cp /var/lib/gems/1.8/bin/gist /usr/local/bin/
$ gist -h


$ gist < file.txt
$ echo secret | gist --private # or -p
$ echo "puts :hi" | gist -t rb
$ gist
$ gist script.js notes.txt
$ pbpaste | gist -p # Copy from clipboard - OSX Only
$ gist -
the quick brown fox jumps over the lazy dog


There are two ways to set GitHub user and token info:

Using env vars GITHUB_USER and GITHUB_TOKEN:

$ export GITHUB_USER="your-github-username"
$ export GITHUB_TOKEN="your-github-token"
$ gist ~/example

Or by having your git config set up with your GitHub username and token.

git config --global github.user "your-github-username"
git config --global github.token "your-github-token"

You can find your token under your account.

You can also define github.token to be a command which returns the actual token on stdout by setting the variable to a command string prefixed with !. For example, the following command fetches the token from a password item named "github.token" on the Mac OS Keychain:

token = !security 2>&1 >/dev/null find-generic-password -gs github.token | ruby -e 'print $1 if STDIN.gets =~ /^password: \\\"(.*)\\\"$/'


You can set a few options in your git config (using git-config(1)) to control the default behavior of gist(1).

  • gist.private - boolean (yes or no) - Determines whether to make a gist private by default

  • gist.extension - string - Default extension for gists you create.

  • gist.browse - boolean (yes or no) - Whether to open the gist in your browser after creation. Default: yes


Set the HTTP_PROXY env variable to use a proxy.

$ HTTP_PROXY=host:port gist file.rb


Visit or use:

$ gist -m


Something went wrong with that request. Please try again.