Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Collection of git scripts and extras

branch: master

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 bin
Octocat-spinner-32 doc
Octocat-spinner-32 .gitignore
Octocat-spinner-32 Makefile


This is a utils repository which aims to collect all the git scripts and provide you with a simple way to use them


sudo make

To install without documentation, try

sudo make install

To Uninstall

sudo make uninstall

git addrm

Add files to & Remove files from index:

$ git addrm

git alias

Define, search and show aliases.

Define a new alias:

$ git alias last "cat-file commit HEAD"

Search for aliases that match a pattern (one argument):

$ git alias ^la
last = cat-file commit HEAD

Show all aliases (no arguments):

$ git alias
s = status
amend = commit --amend
rank = shortlog -sn --no-merges
whatis = show -s --pretty='tformat:%h (%s, %ad)' --date=short
whois = !sh -c 'git log -i -1 --pretty="format:%an <%ae>

git back

Removes the latest commit, and add their changes to index:

$ git back

Remove the latest 3 commits, and add their changes to index:

$ git back 3

git commits-since

List commits since date (defaults to "last week"):

$ git commits-since
... changes since last week
TJ Holowaychuk - Fixed readme
TJ Holowaychuk - Added git-repl
TJ Holowaychuk - Added git-delete-tag
TJ Holowaychuk - Added git-delete-branch

$ git commits-since yesterday
... changes since yesterday
TJ Holowaychuk - Fixed readme

git contrib

Output author's contributions to a project:

$ git contrib visionmedia
visionmedia (18):
  Replaced several calls with
  Moved help msg to node-repl
  Added multiple arg support for sys.puts(), print(), etc.
  Fix stack output on socket error

git count

Output commit count:

$ git count

total 1844

Output detailed commit count:

$ git count --all

visionmedia (1285)
Tj Holowaychuk (430)
Aaron Heckmann (48)
csausdev (34)
ciaranj (26)
Guillermo Rauch (6)
Brian McKinney (2)
Nick Poulden (2)
Benny Wong (2)
Justin Lilly (1)
isaacs (1)
Adam Sanderson (1)
Viktor Kelemen (1)
Gregory Ritter (1)
Greg Ritter (1)
ewoudj (1)
James Herdman (1)
Matt Colyer (1)

total 1844

git create-branch

Create local and remote branch name:

$ git create-branch development

git delete-branch

Delete local and remote branch name:

$ git delete-branch integration

git delete-tag

Delete local and remote tag name:

$ git delete-tag 0.0.1

git fresh-branch

Create empty local branch name:

$ git fresh-branch docs

git gh-pages

Sets up the gh-pages branch. (See GitHub Pages documentation.)

git graft

Merge commits from src-branch into dest-branch. (dest-branch defaults to master.)

$ git graft new_feature dev
$ git graft new_feature

git ignore

To lazy to open up .gitignore? me too! simply pass some patterns:

$ git ignore build "*.o" "*.log"
    ... added 'build'
    ... added '*.o'
    ... added '*.log'

Running git ignore without a pattern will display the current patterns:

$ git ignore

git promote

Promotes a local topic branch to a remote tracking branch of the same name, by pushing and then setting up the git config.

$ git promote

git repl

git read-eval-print-loop:

$ git repl

git> ls-files

git> quit

git setup

Set up a git repository (if one doesn't exist), add all files, and make an initial commit. dir defaults to the current working directory.

git summary

Outputs a repo summary:

$ git summary

project: git-extras
commits: 163
files  : 93
   97   Tj Holowaychuk          59.5%
   37   Jonhnny Weslley         22.7%
    8   Kenneth Reitz           4.9%
    5   Aggelos Orfanakos       3.1%
    3   Jonathan "Duke" Leto    1.8%
    2   Gert Van Gool           1.2%
    2   Domenico Rotiroti       1.2%
    2   Devin Withers           1.2%
    2   TJ Holowaychuk          1.2%
    1   Nick Campbell           0.6%
    1   Alex McHale             0.6%
    1   Jason Young             0.6%
    1   Jens K. Mueller         0.6%
    1   Guillermo Rauch         0.6%

This command can also take a commitish, and will print a summary for commits in the commmitish range:

$ git summary v42..

git touch

Call touch on the given file, and add it to the current index. One-step creation of new files.

$ git touch Makefile

git undo

Remove the latest commit:

$ git undo

Remove the latest 3 commits:

$ git undo 3


Here is a list of Contributors


I accept pull requests and guarantee a reply back within a day



Bug Reports

Report here. Guaranteed reply within a day.


Pavan Kumar Sunkara (

Follow me on github, twitter

Something went wrong with that request. Please try again.