diff --git a/caffeinate b/acm/caffeinate
similarity index 100%
rename from caffeinate
rename to acm/caffeinate
diff --git a/git-extras b/git-extras
new file mode 160000
index 00000000..86a102e6
--- /dev/null
+++ b/git-extras
@@ -0,0 +1 @@
+Subproject commit 86a102e63e558ab4ed8a11567d38b3a3e9e03406
diff --git a/git-info b/git-info
deleted file mode 100755
index e69327a7..00000000
--- a/git-info
+++ /dev/null
@@ -1,32 +0,0 @@
-#! /bin/sh
-# based on a script by Duane Johnson with some simplifications
-
-GIT_DIR=`git rev-parse --git-dir`
-
-# not a valid git repo? leave
-if [ $? -ne 0 ] ; then
-  exit
-fi
-
-# Show various information about this git directory
-echo "== Remote URL: "
-git remote -v
-echo
-
-echo "== Remote Branches: "
-git branch -r
-echo
-
-echo "== Local Branches:"
-git branch
-echo
-
-echo "== Configuration (.git/config)"
-cat "${GIT_DIR}/config"
-echo
-
-echo "== Most Recent Commit"
-git --no-pager log --max-count=1
-echo
-
-echo "Type 'git log' for more commits, or 'git show' for full commit details."
diff --git a/git-untrack-ignored b/git-untrack-ignored
deleted file mode 100755
index 32dcdde2..00000000
--- a/git-untrack-ignored
+++ /dev/null
@@ -1,53 +0,0 @@
-#! /usr/bin/env perl
-# moderately tested script to untrack files that are listed in .gitignore
-
-use strict;
-use warnings;
-use Getopt::Long;
-
-my $dry_run   = 0;
-my $help_me   = 0;
-GetOptions(
-	'dry-run!'    => \$dry_run,
-	'h|help|?'    => \$help_me,
-);
-
-if ($help_me) {
-	print "$0: runs 'git rm --cached' for all the files in your .gitignore\n";
-	print "(This makes them untracked but not deleted)\n";
-	print "Options: --dry-run: just print out which files we would remove\n";
-	exit;
-}
-
-open my $fh, '<', '.gitignore' or die "Couldn't find/open .gitignore: $!";
-my @patterns = <$fh>;
-close $fh;
-chomp @patterns;
-
-apply_patterns('.', @patterns);
-
-sub apply_patterns {
-	my $dir = shift;
-	#print "at $dir\n";
-	my @patterns = @_;
-
-	for my $pattern (@patterns) {
-		if ($pattern =~ /^\s*#/ || $pattern =~ /^\s*$/) {
-			next;
-		} elsif ($pattern =~ /^\s*!/) {
-			print "ignoring negating pattern\n";
-		}
-
-		my @files = glob($pattern);
-
-		for my $file (grep {-e $_} map {"$dir/$_"} @files) {
-			if ($dry_run) {
-				print "unstage $file\n";
-			} else {
-				system('git', 'rm', '-q', '--ignore-unmatch', '--cached', $file);
-			}
-		}
-	}
-
-	apply_patterns($_, @patterns) for grep {-d} glob($dir . '/*');
-}
diff --git a/gitconfig b/gitconfig
index d28c8be1..bcb5f2bd 100644
--- a/gitconfig
+++ b/gitconfig
@@ -24,8 +24,6 @@
 	type = cat-file -t
 	dump = cat-file -p
 
-	untrack-ignored = !git-untracked-ignored
-	info = !git-info
 	amend = commit --amend -C HEAD
 	tree = log --graph --pretty=oneline
 	hist = log --graph --pretty=format:'%C(cyan)%h%Creset -%C(yellow)%d%Creset %s %C(magenta)[%an]%Creset %Cgreen(%ad)%Creset' --date=relative
diff --git a/install.pl b/install.pl
index 2658c0fe..8c15e215 100755
--- a/install.pl
+++ b/install.pl
@@ -48,6 +48,8 @@
 	_vimrc   => '_vimrc',
 	gvimrc   => '.gvimrc',
 
+	man      => '.man',
+
 	emacsrc => '.emacs',
 	emacs => '.emacsdir',
 
@@ -85,13 +87,49 @@
 
 	tigrc     => '.tigrc',
 
-	caffeinate => 'bin/caffeinate',
+	'acm/caffeinate' => 'bin/caffeinate',
 	lock       => 'bin/lock',
 
-	'git-info'            => 'bin/git-info',
-	'git-untrack-ignored' => 'bin/git-untracked-ignored',
-
 	gdbinit => '.gdbinit',
+
+	# z (https://github.com/rupa/z)
+	'z/z.sh' => 'bin/z.sh',
+	'z/z.1' => '.man/z.1',
+
+	# git extras (https://github.com/visionmedia/git-extras)
+	'git-extras/bin/git-alias' => 'bin/git-alias',
+	'git-extras/bin/git-back' => 'bin/git-back',
+	'git-extras/bin/git-bug' => 'bin/git-bug',
+	'git-extras/bin/git-changelog' => 'bin/git-changelog',
+	'git-extras/bin/git-commits-since' => 'bin/git-commits-since',
+	'git-extras/bin/git-contrib' => 'bin/git-contrib',
+	'git-extras/bin/git-count' => 'bin/git-count',
+	'git-extras/bin/git-create-branch' => 'bin/git-create-branch',
+	'git-extras/bin/git-delete-branch' => 'bin/git-delete-branch',
+	'git-extras/bin/git-delete-merged-branches' => 'bin/git-delete-merged-branches',
+	'git-extras/bin/git-delete-submodule' => 'bin/git-delete-submodule',
+	'git-extras/bin/git-delete-tag' => 'bin/git-delete-tag',
+	'git-extras/bin/git-effort' => 'bin/git-effort',
+	'git-extras/bin/git-extras' => 'bin/git-extras',
+	'git-extras/bin/git-feature' => 'bin/git-feature',
+	'git-extras/bin/git-fresh-branch' => 'bin/git-fresh-branch',
+	'git-extras/bin/git-gh-pages' => 'bin/git-gh-pages',
+	'git-extras/bin/git-graft' => 'bin/git-graft',
+	'git-extras/bin/git-ignore' => 'bin/git-ignore',
+	'git-extras/bin/git-info' => 'bin/git-info',
+	'git-extras/bin/git-local-commits' => 'bin/git-local-commits',
+	'git-extras/bin/git-obliterate' => 'bin/git-obliterate',
+	'git-extras/bin/git-pull-request' => 'bin/git-pull-request',
+	'git-extras/bin/git-refactor' => 'bin/git-refactor',
+	'git-extras/bin/git-release' => 'bin/git-release',
+	'git-extras/bin/git-rename-tag' => 'bin/git-rename-tag',
+	'git-extras/bin/git-repl' => 'bin/git-repl',
+	'git-extras/bin/git-setup' => 'bin/git-setup',
+	'git-extras/bin/git-show-tree' => 'bin/git-show-tree',
+	'git-extras/bin/git-squash' => 'bin/git-squash',
+	'git-extras/bin/git-summary' => 'bin/git-summary',
+	'git-extras/bin/git-touch' => 'bin/git-touch',
+	'git-extras/bin/git-undo' => 'bin/git-undo',
 );
 
 my $contained = (substr $scriptdir, 0, length($home)) eq $home;
diff --git a/man/man1/git-alias.1 b/man/man1/git-alias.1
new file mode 100644
index 00000000..1c1cc42f
--- /dev/null
+++ b/man/man1/git-alias.1
@@ -0,0 +1,84 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-ALIAS" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-alias\fR \- Define, search and show aliases
+.
+.SH "SYNOPSIS"
+\fBgit\-alias\fR [<alias\-name> <command>]|[<search\-term>]
+.
+.SH "DESCRIPTION"
+.
+.SH "OPTIONS"
+<alias\-name>
+.
+.P
+The name of the alias to create\.
+.
+.P
+<command>
+.
+.P
+The command for which you are creating an alias\.
+.
+.P
+<search\-term>
+.
+.P
+The pattern used for search aliases\.
+.
+.SH "EXAMPLES"
+Defining a new alias:
+.
+.IP "" 4
+.
+.nf
+
+$ git alias last "cat\-file commit HEAD"
+.
+.fi
+.
+.IP "" 0
+.
+.P
+Providing only one argument, \fBgit\-alias\fR searchs for aliases matching the given value:
+.
+.IP "" 4
+.
+.nf
+
+$ git alias ^la
+last = cat\-file commit HEAD
+.
+.fi
+.
+.IP "" 0
+.
+.P
+\fBgit\-alias\fR will show all aliases if no argument is given:
+.
+.IP "" 4
+.
+.nf
+
+$ 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>
+.
+.fi
+.
+.IP "" 0
+.
+.SH "AUTHOR"
+Written by Jonhnny Weslley <\fIjw@jonhnnyweslley\.net\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-back.1 b/man/man1/git-back.1
new file mode 100644
index 00000000..8fb7a129
--- /dev/null
+++ b/man/man1/git-back.1
@@ -0,0 +1,54 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-BACK" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-back\fR \- Undo and Stage latest commits
+.
+.SH "SYNOPSIS"
+\fBgit\-back\fR [<commitcount>]
+.
+.SH "DESCRIPTION"
+Removes the latest commits, and add their changes to your staging area\.
+.
+.SH "OPTIONS"
+<commitcount>
+.
+.P
+Number of commits to remove\. Defaults to \fI1\fR, thus remove the latest commit\.
+.
+.SH "EXAMPLES"
+Removes the latest commit\.
+.
+.IP "" 4
+.
+.nf
+
+$ git back
+.
+.fi
+.
+.IP "" 0
+.
+.P
+Remove the latest 3 commits:
+.
+.IP "" 4
+.
+.nf
+
+$ git back 3
+.
+.fi
+.
+.IP "" 0
+.
+.SH "AUTHOR"
+Written by Kenneth Reitz <\fIme@kennethreitz\.com\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-bug.1 b/man/man1/git-bug.1
new file mode 100644
index 00000000..857777b9
--- /dev/null
+++ b/man/man1/git-bug.1
@@ -0,0 +1,47 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-BUG" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-bug\fR \- Create bug branch
+.
+.SH "SYNOPSIS"
+\fBgit\-bug\fR [finish] <name>
+.
+.SH "DESCRIPTION"
+Create the given bug branch
+.
+.SH "OPTIONS"
+<finish>
+.
+.P
+Merge and delete the bug branch\.
+.
+.P
+<name>
+.
+.P
+The name of the bug branch\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git bug bug\-123456
+\.\.\.
+$ git commit \-m "Some changes"
+\.\.\.
+$ git checkout master
+$ git bug finish bug\-123456
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Jesús Espino <\fIjespinog@gmail\.com\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-changelog.1 b/man/man1/git-changelog.1
new file mode 100644
index 00000000..57f760cb
--- /dev/null
+++ b/man/man1/git-changelog.1
@@ -0,0 +1,77 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-CHANGELOG" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-changelog\fR \- Generate the changelog report
+.
+.SH "SYNOPSIS"
+\fBgit\-changelog\fR [\-l, \-\-list]
+.
+.SH "DESCRIPTION"
+Populates the file named matching \fIchange|history \-i\fR with the commits since the previous tag or since the project began when no tags are present\. Opens the changelog in \fB$EDITOR\fR when set\.
+.
+.SH "OPTIONS"
+\-l, \-\-list
+.
+.P
+Show commit logs from the current version\.
+.
+.SH "EXAMPLES"
+.
+.IP "\(bu" 4
+Updating changelog file:
+.
+.IP
+$ git changelog
+.
+.IP "\(bu" 4
+Listing commits from the current version:
+.
+.IP
+$ git changelog \-\-list
+.
+.IP "\(bu" 4
+Docs for git\-ignore\. Closes #3
+.
+.IP "\(bu" 4
+Merge branch \'ignore\'
+.
+.IP "\(bu" 4
+Added git\-ignore
+.
+.IP "\(bu" 4
+Fixed <tag> in docs
+.
+.IP "\(bu" 4
+Install docs
+.
+.IP "\(bu" 4
+Merge branch \'release\'
+.
+.IP "\(bu" 4
+Added git\-release
+.
+.IP "\(bu" 4
+Passing args to git shortlog
+.
+.IP "\(bu" 4
+Added \-\-all support to git\-count
+.
+.IP "\(bu" 4
+Initial commit
+.
+.IP "" 0
+
+.
+.IP "" 0
+.
+.SH "AUTHOR"
+Written by Tj Holowaychuk <\fItj@vision\-media\.ca\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-commits-since.1 b/man/man1/git-commits-since.1
new file mode 100644
index 00000000..4cb5ace1
--- /dev/null
+++ b/man/man1/git-commits-since.1
@@ -0,0 +1,57 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-COMMITS\-SINCE" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-commits\-since\fR \- Show commit logs since some date
+.
+.SH "SYNOPSIS"
+\fBgit\-commits\-since\fR [<date>]
+.
+.SH "DESCRIPTION"
+List of commits since the given \fIdate\fR\.
+.
+.SH "OPTIONS"
+<date>
+.
+.P
+Show commits more recent than \fIdate\fR\. By default, the command shows the commit logs since "last week"\.
+.
+.SH "EXAMPLES"
+It is really flexible and these are only 3 of the options, go ahead give it a try:
+.
+.IP "" 4
+.
+.nf
+
+$ git commits\-since yesterday
+\.\.\. commits since yesterday
+nickl\- \- Merge branch upstream master\.
+nickl\- \- Rebase bolshakov with master
+TJ Holowaychuk \- Merge pull request #128 from nickl\-/git\-extras\-html\-hyperlinks
+TJ Holowaychuk \- Merge pull request #129 from nickl\-/develop
+nickl\- \- Fix #127 git\-ignore won\'t add duplicates\.
+
+$ git commits\-since 3 o clock pm
+\.\.\. commits since 3 o clock pm
+nickl\- \- Merge branch upstream master\.
+
+$ git commits\-since 2 hour ago
+\.\.\. commits since 2 hour ago
+nickl\- \- Merge branch upstream master\.
+TJ Holowaychuk \- Merge pull request #128 from nickl\-/git\-extras\-html\-hyperlinks
+TJ Holowaychuk \- Merge pull request #129 from nickl\-/develop
+.
+.fi
+.
+.IP "" 0
+.
+.SH "AUTHOR"
+Written by Tj Holowaychuk <\fItj@vision\-media\.ca\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-contrib.1 b/man/man1/git-contrib.1
new file mode 100644
index 00000000..005a5a8a
--- /dev/null
+++ b/man/man1/git-contrib.1
@@ -0,0 +1,43 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-CONTRIB" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-contrib\fR \- Show user\'s contributions
+.
+.SH "SYNOPSIS"
+\fBgit\-contrib\fR <username>
+.
+.SH "DESCRIPTION"
+Output a user\'s contributions to a project, based on the author name\.
+.
+.SH "OPTIONS"
+<username>
+.
+.P
+The name of the user who owns the contributions\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git contrib visionmedia
+visionmedia (18):
+  Export STATUS_CODES
+  Replaced several Array\.prototype\.slice\.call() calls with Array\.prototype\.unshift\.call()
+  Moved help msg to node\-repl
+  Added multiple arg support for sys\.puts(), print(), etc\.
+  Fix stack output on socket error
+  \.\.\.
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Tj Holowaychuk <\fItj@vision\-media\.ca\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-count.1 b/man/man1/git-count.1
new file mode 100644
index 00000000..5885b79b
--- /dev/null
+++ b/man/man1/git-count.1
@@ -0,0 +1,77 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-COUNT" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-count\fR \- Show commit count
+.
+.SH "SYNOPSIS"
+\fBgit\-count\fR [\-\-all]
+.
+.SH "DESCRIPTION"
+Show commit count\.
+.
+.SH "OPTIONS"
+\-\-all
+.
+.P
+Show commit count details\.
+.
+.SH "EXAMPLES"
+Output commit total:
+.
+.IP "" 4
+.
+.nf
+
+$ git count
+
+total 1844
+.
+.fi
+.
+.IP "" 0
+.
+.P
+Output verbose commit count details:
+.
+.IP "" 4
+.
+.nf
+
+$ 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
+.
+.fi
+.
+.IP "" 0
+.
+.SH "AUTHOR"
+Written by Tj Holowaychuk <\fItj@vision\-media\.ca\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-create-branch.1 b/man/man1/git-create-branch.1
new file mode 100644
index 00000000..d8976a3c
--- /dev/null
+++ b/man/man1/git-create-branch.1
@@ -0,0 +1,36 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-CREATE\-BRANCH" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-create\-branch\fR \- Create branches
+.
+.SH "SYNOPSIS"
+\fBgit\-create\-branch\fR <branchname>
+.
+.SH "DESCRIPTION"
+Creates local and remote branch named <branchname>\.
+.
+.SH "OPTIONS"
+<branchname>
+.
+.P
+The name of the branch to create\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git create\-branch integration
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Jonhnny Weslley <\fIjw@jonhnnyweslley\.net\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-delete-branch.1 b/man/man1/git-delete-branch.1
new file mode 100644
index 00000000..f5792b23
--- /dev/null
+++ b/man/man1/git-delete-branch.1
@@ -0,0 +1,36 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-DELETE\-BRANCH" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-delete\-branch\fR \- Delete branches
+.
+.SH "SYNOPSIS"
+\fBgit\-delete\-branch\fR <branchname>
+.
+.SH "DESCRIPTION"
+Deletes local and remote branch named <branchname>\.
+.
+.SH "OPTIONS"
+<branchname>
+.
+.P
+The name of the branch to delete\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git delete\-branch integration
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Tj Holowaychuk <\fItj@vision\-media\.ca\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-delete-merged-branches.1 b/man/man1/git-delete-merged-branches.1
new file mode 100644
index 00000000..d0bb8b50
--- /dev/null
+++ b/man/man1/git-delete-merged-branches.1
@@ -0,0 +1,30 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-DELETE\-MERGED\-BRANCHES" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-delete\-merged\-branches\fR \- Delete merged branches
+.
+.SH "SYNOPSIS"
+\fBgit\-delete\-merged\-branches\fR
+.
+.SH "DESCRIPTION"
+Deletes all local merged branches\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git delete\-merged\-branches
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Jesús Espino <\fIjespinog@gmail\.com\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-delete-submodule.1 b/man/man1/git-delete-submodule.1
new file mode 100644
index 00000000..cc6d6744
--- /dev/null
+++ b/man/man1/git-delete-submodule.1
@@ -0,0 +1,35 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-DELETE\-SUBMODULE" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-delete\-submodule\fR \- Delete submodules
+.
+.SH "SYNOPSIS"
+\fBgit\-delete\-submodule\fR <path>
+.
+.SH "DESCRIPTION"
+.
+.SH "OPTIONS"
+<path>
+.
+.P
+The path of the submodule to delete\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git delete\-submodule lib/foo
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Jonhnny Weslley <\fIjw@jonhnnyweslley\.net\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-delete-tag.1 b/man/man1/git-delete-tag.1
new file mode 100644
index 00000000..d45ef5e3
--- /dev/null
+++ b/man/man1/git-delete-tag.1
@@ -0,0 +1,36 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-DELETE\-TAG" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-delete\-tag\fR \- Delete tags
+.
+.SH "SYNOPSIS"
+\fBgit\-delete\-tag\fR <tagname>
+.
+.SH "DESCRIPTION"
+Deletes local and remote tag named <tagname>\.
+.
+.SH "OPTIONS"
+<tagname>
+.
+.P
+The name of the branch to delete\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git delete\-tag 0\.0\.1
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Tj Holowaychuk <\fItj@vision\-media\.ca\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-effort.1 b/man/man1/git-effort.1
new file mode 100644
index 00000000..501857fb
--- /dev/null
+++ b/man/man1/git-effort.1
@@ -0,0 +1,68 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-EFFORT" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-effort\fR \- Show effort statistics on file(s)
+.
+.SH "SYNOPSIS"
+\fBgit\-effort\fR [\-\-above <value>] [<filename>]
+.
+.SH "DESCRIPTION"
+Shows effort statistics about files in the repository\.
+.
+.P
+Display includes:
+.
+.br
+\- Commits: number of commits per file \- highlighting files with most activity\.
+.
+.br
+\- Active days: total number of days which contributed modifications to this file\.
+.
+.SH "OPTIONS"
+\-\-above <value>
+.
+.P
+Ignore files with commits <= a value\.
+.
+.P
+<filename>
+.
+.P
+Only display effort statistics for a specific filename\.
+.
+.SH "EXAMPLES"
+Displays "effort" statistics:
+.
+.IP "" 4
+.
+.nf
+
+$ git effort \-\-above 5
+
+  file                                          commits    active days
+
+  git\-extras                                    26         18
+  git\-release                                   13         13
+  git\-effort                                    13         2
+  git\-ignore                                    11         7
+  git\-changelog                                 11         8
+  git\-graft                                     9          6
+  git\-summary                                   8          6
+  git\-delete\-branch                             8          6
+  git\-repl                                      7          5
+.
+.fi
+.
+.IP "" 0
+.
+.SH "AUTHOR"
+Written by Leila Muhtasib <\fImuhtasib@gmail\.com\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-extras.1 b/man/man1/git-extras.1
new file mode 100644
index 00000000..21a0d8ac
--- /dev/null
+++ b/man/man1/git-extras.1
@@ -0,0 +1,131 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-EXTRAS" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-extras\fR \- Awesome GIT utilities
+.
+.SH "SYNOPSIS"
+\fBgit\-extras\fR [\-v,\-\-version] [\-h,\-\-help] [update]
+.
+.SH "OPTIONS"
+\-v, \-\-version
+.
+.P
+Show git\-extras version number\.
+.
+.P
+\-h, \-\-help
+.
+.P
+Show this help\. This option can also be used for any of the extras commands\.
+.
+.P
+update
+.
+.P
+Self update\.
+.
+.SH "COMMANDS"
+.
+.IP "\(bu" 4
+\fBgit\-alias(1)\fR Define, search and show aliases
+.
+.IP "\(bu" 4
+\fBgit\-back(1)\fR Undo and Stage latest commits
+.
+.IP "\(bu" 4
+\fBgit\-bug(1)\fR Create bug branch
+.
+.IP "\(bu" 4
+\fBgit\-changelog(1)\fR Generate the changelog report
+.
+.IP "\(bu" 4
+\fBgit\-commits\-since(1)\fR Show commit logs since some date
+.
+.IP "\(bu" 4
+\fBgit\-contrib(1)\fR Show user\'s contributions
+.
+.IP "\(bu" 4
+\fBgit\-count(1)\fR Show commit count
+.
+.IP "\(bu" 4
+\fBgit\-create\-branch(1)\fR Create branches
+.
+.IP "\(bu" 4
+\fBgit\-delete\-branch(1)\fR Delete branches
+.
+.IP "\(bu" 4
+\fBgit\-delete\-merged\-branches(1)\fR Delete merged branches
+.
+.IP "\(bu" 4
+\fBgit\-delete\-submodule(1)\fR Delete submodules
+.
+.IP "\(bu" 4
+\fBgit\-delete\-tag(1)\fR Delete tags
+.
+.IP "\(bu" 4
+\fBgit\-effort(1)\fR Show effort statistics on file(s)
+.
+.IP "\(bu" 4
+\fBgit\-feature(1)\fR Create feature branch
+.
+.IP "\(bu" 4
+\fBgit\-fresh\-branch(1)\fR Create fresh branches
+.
+.IP "\(bu" 4
+\fBgit\-gh\-pages(1)\fR Create the GitHub Pages branch
+.
+.IP "\(bu" 4
+\fBgit\-graft(1)\fR Merge and destroy a given branch
+.
+.IP "\(bu" 4
+\fBgit\-ignore(1)\fR Add \.gitignore patterns
+.
+.IP "\(bu" 4
+\fBgit\-info(1)\fR Returns information on current repository
+.
+.IP "\(bu" 4
+\fBgit\-local\-commits(1)\fR List local commits
+.
+.IP "\(bu" 4
+\fBgit\-refactor(1)\fR Create refactor branch
+.
+.IP "\(bu" 4
+\fBgit\-release(1)\fR Commit, tag and push changes to the repository
+.
+.IP "\(bu" 4
+\fBgit\-rename\-tag(1)\fR Rename a tag
+.
+.IP "\(bu" 4
+\fBgit\-repl(1)\fR git read\-eval\-print\-loop
+.
+.IP "\(bu" 4
+\fBgit\-setup(1)\fR Set up a git repository
+.
+.IP "\(bu" 4
+\fBgit\-show\-tree(1)\fR show branch tree of commit history
+.
+.IP "\(bu" 4
+\fBgit\-squash(1)\fR Import changes form a branch
+.
+.IP "\(bu" 4
+\fBgit\-summary(1)\fR Show repository summary
+.
+.IP "\(bu" 4
+\fBgit\-touch(1)\fR Touch and add file to the index
+.
+.IP "\(bu" 4
+\fBgit\-undo(1)\fR Remove latest commits
+.
+.IP "" 0
+.
+.SH "AUTHOR"
+Written by Tj Holowaychuk <\fItj@vision\-media\.ca\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-feature.1 b/man/man1/git-feature.1
new file mode 100644
index 00000000..faac8ccb
--- /dev/null
+++ b/man/man1/git-feature.1
@@ -0,0 +1,47 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-FEATURE" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-feature\fR \- Create feature branch
+.
+.SH "SYNOPSIS"
+\fBgit\-feature\fR [finish] <name>
+.
+.SH "DESCRIPTION"
+Create the given feature branch
+.
+.SH "OPTIONS"
+<finish>
+.
+.P
+Merge and delete the feature branch\.
+.
+.P
+<name>
+.
+.P
+The name of the feature branch\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git feature dependencies
+\.\.\.
+$ git commit \-m "Some changes"
+\.\.\.
+$ git checkout master
+$ git feature finish dependencies
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Jesús Espino <\fIjespinog@gmail\.com\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-fresh-branch.1 b/man/man1/git-fresh-branch.1
new file mode 100644
index 00000000..18eca043
--- /dev/null
+++ b/man/man1/git-fresh-branch.1
@@ -0,0 +1,36 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-FRESH\-BRANCH" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-fresh\-branch\fR \- Create fresh branches
+.
+.SH "SYNOPSIS"
+\fBgit\-fresh\-branch\fR <branchname>
+.
+.SH "DESCRIPTION"
+Creates empty local branch named <branchname>\.
+.
+.SH "OPTIONS"
+<branchname>
+.
+.P
+The name of the branch to create\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git fresh\-branch docs
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Kenneth Reitz <\fIme@kennethreitz\.com\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-gh-pages.1 b/man/man1/git-gh-pages.1
new file mode 100644
index 00000000..68ffb3c7
--- /dev/null
+++ b/man/man1/git-gh-pages.1
@@ -0,0 +1,43 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-GH\-PAGES" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-gh\-pages\fR \- Create the GitHub Pages branch
+.
+.SH "SYNOPSIS"
+\fBgit\-gh\-pages\fR
+.
+.SH "DESCRIPTION"
+Create the GitHub Pages branch (gh\-pages) with an initial dummy index\.html file\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git gh\-pages
+setting up gh\-pages
+Removing \.\.\.
+[gh\-pages (root\-commit) 94f4b26] Initial commit
+ 1 file changed, 1 insertion(+)
+ create mode 100644 index\.html
+Counting objects: 3, done\.
+Writing objects: 100% (3/3), 232 bytes, done\.
+Total 3 (delta 0), reused 0 (delta 0)
+To git@github\.com:myuser/myrepository\.git
+ * [new branch]      gh\-pages \-> gh\-pages
+Branch gh\-pages set up to track remote branch gh\-pages from origin\.
+complete
+$
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Jesús Espino <\fIjespinog@gmail\.com\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-graft.1 b/man/man1/git-graft.1
new file mode 100644
index 00000000..cbf59de9
--- /dev/null
+++ b/man/man1/git-graft.1
@@ -0,0 +1,37 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-GRAFT" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-graft\fR \- Merge and destroy a given branch
+.
+.SH "SYNOPSIS"
+\fBgit\-graft\fR <src\-branch> [<dest\-branch>]
+.
+.SH "DESCRIPTION"
+Merge commits from <src\-branch> into <dest\-branch> which defaults to the current branch\.
+.
+.SH "OPTIONS"
+<src\-branch>
+.
+.P
+<dest\-branch>
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git graft new_feature dev
+$ git graft new_feature
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Kenneth Reitz <\fIme@kennethreitz\.com\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-ignore.1 b/man/man1/git-ignore.1
new file mode 100644
index 00000000..c121d849
--- /dev/null
+++ b/man/man1/git-ignore.1
@@ -0,0 +1,171 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-IGNORE" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-ignore\fR \- Add \.gitignore patterns
+.
+.SH "SYNOPSIS"
+\fBgit\-ignore\fR [<context>] [<pattern> [<pattern>]\.\.\.]
+.
+.SH "DESCRIPTION"
+Adds the given _pattern_s to a \.gitignore file if it doesn\'t already exist\.
+.
+.SH "OPTIONS"
+<context>
+.
+.P
+\-l, \-\-local
+.
+.P
+Sets the context to the \.gitignore file in the current working directory\. (default)
+.
+.P
+\-g, \-\-global
+.
+.P
+Sets the context to the global gitignore file fol the current user\.
+.
+.P
+<pattern>
+.
+.P
+A space delimited list of patterns to append to the file in context\.
+.
+.SS "PATTERN FORMAT"
+Pattern format as described in the git manual
+.
+.IP "\(bu" 4
+A blank line matches no files, so it can serve as a separator for readability\. To append a blank line use empty quotes ""\.
+.
+.IP "\(bu" 4
+A line starting with # serves as a comment\. For example, "# This is a comment"
+.
+.IP "\(bu" 4
+An optional prefix ! which negates the pattern; any matching file excluded by a previous pattern will become included again\. If a negated pattern matches, this will override lower precedence patterns sources\. To use an exclamation ! as command line argument it is best placed between single quotes \'\'\. For example, \'!src\'
+.
+.IP "\(bu" 4
+If the pattern ends with a slash, it is removed for the purpose of the following description, but it would only find a match with a directory\. In other words, foo/ will match a directory foo and paths underneath it, but will not match a regular file or a symbolic link foo (this is consistent with the way how pathspec works in general in git)\.
+.
+.IP "\(bu" 4
+If the pattern does not contain a slash /, git treats it as a shell glob pattern and checks for a match against the pathname relative to the location of the \.gitignore file (relative to the toplevel of the work tree if not from a \.gitignore file)\.
+.
+.IP "\(bu" 4
+Otherwise, git treats the pattern as a shell glob suitable for consumption by fnmatch(3) with the FNM_PATHNAME flag: wildcards in the pattern will not match a / in the pathname\. For example, "Documentation/*\.html" matches "Documentation/git\.html" but not "Documentation/ppc/ppc\.html" or "tools/perf/Documentation/perf\.html"\.
+.
+.IP "\(bu" 4
+A leading slash matches the beginning of the pathname\. For example, "/*\.c" matches "cat\-file\.c" but not "mozilla\-sha1/sha1\.c"\.
+.
+.IP "" 0
+.
+.SH "EXAMPLES"
+All arguments are optional so calling git\-ignore alone will display first the global then the local gitignore files:
+.
+.IP "" 4
+.
+.nf
+
+$ git ignore
+Global gitignore: /home/alice/\.gitignore
+# Numerous always\-ignore extensions
+*\.diff
+*\.err
+*\.orig
+*\.rej
+*\.swo
+*\.swp
+*\.vi
+*~
+*\.sass\-cache
+
+# OS or Editor folders
+\.DS_Store
+\.Trashes
+\._*
+Thumbs\.db
+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
+Local gitignore: \.gitignore
+\.cache
+\.project
+\.settings
+\.tmproj
+nbproject
+.
+.fi
+.
+.IP "" 0
+.
+.P
+If you only want to see the global context use the \-\-global argument (for local use \-\-local):
+.
+.IP "" 4
+.
+.nf
+
+$ git ignore
+Global gitignore: /home/alice/\.gitignore
+\.DS_Store
+\.Trashes
+\._*
+Thumbs\.db
+.
+.fi
+.
+.IP "" 0
+.
+.P
+To quickly append a new pattern to the default/local context simply:
+.
+.IP "" 4
+.
+.nf
+
+$ git ignore *\.log
+Adding pattern(s) to: \.gitignore
+\.\.\. adding \'*\.log\'
+.
+.fi
+.
+.IP "" 0
+.
+.P
+You can now configure any patterns without ever using an editor, with a context and pattern arguments: The resulting configuration is also returned for your convenience\.
+.
+.IP "" 4
+.
+.nf
+
+$ git ignore \-\-local "" "# Temporary files" *\.tmp "*\.log" tmp/*  "" "# Files I\'d like to keep" \'!work\'  ""
+Adding pattern(s) to: \.gitignore
+\.\.\. adding \'\'
+\.\.\. adding \'# Temporary files\'
+\.\.\. adding \'index\.tmp\'
+\.\.\. adding \'*\.log\'
+\.\.\. adding \'tmp/*\'
+\.\.\. adding \'\'
+\.\.\. adding \'# Files I\'d like to keep\'
+\.\.\. adding \'!work\'
+\.\.\. adding \'\'
+
+Local gitignore: \.gitignore
+
+# Temporary files
+index\.tmp
+*\.log
+
+# Files I\'d like to keep
+!work
+.
+.fi
+.
+.IP "" 0
+.
+.SH "AUTHOR"
+Written by Tj Holowaychuk <\fItj@vision\-media\.ca\fR> and Tema Bolshakov <\fItweekane@gmail\.com\fR> and Nick Lombard <\fIgithub@jigsoft\.co\.za\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-info.1 b/man/man1/git-info.1
new file mode 100644
index 00000000..58657e5a
--- /dev/null
+++ b/man/man1/git-info.1
@@ -0,0 +1,96 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-INFO" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-info\fR \- Returns information on current repository
+.
+.SH "SYNOPSIS"
+\fBgit\-info\fR
+.
+.SH "DESCRIPTION"
+Shows the following information about a repository:
+.
+.IP "1." 4
+Remote Url(s)
+.
+.IP "2." 4
+Remote Branches
+.
+.IP "3." 4
+Local Branches
+.
+.IP "4." 4
+Most recent commit
+.
+.IP "5." 4
+Configuration Info
+.
+.IP "" 0
+.
+.SH "OPTIONS"
+N/A
+.
+.SH "EXAMPLES"
+Outputs info about a repo:
+.
+.IP "" 4
+.
+.nf
+
+$ git info
+
+## Remote URLs:
+
+origin      git@github\.com:sampleAuthor/git\-extras\.git (fetch)
+origin      git@github\.com:sampleAuthor/git\-extras\.git (push)
+
+## Remote Branches:
+
+origin/HEAD \-> origin/master
+origin/myBranch
+
+## Local Branches:
+
+myBranch
+* master
+
+## Most Recent Commit:
+
+commit e3952df2c172c6f3eb533d8d0b1a6c77250769a7
+Author: Sample Author <sampleAuthor@gmail\.com>
+
+Added git\-info command\.
+
+Type \'git log\' for more commits, or \'git show <commit id>\' for full commit details\.
+
+## Configuration (\.git/config):
+
+color\.diff=auto
+color\.status=auto
+color\.branch=auto
+user\.name=Sample Author
+user\.email=sampleAuthor@gmail\.com
+core\.repositoryformatversion=0
+core\.filemode=true
+core\.bare=false
+core\.logallrefupdates=true
+core\.ignorecase=true
+remote\.origin\.fetch=+refs/heads/*:refs/remotes/origin/*
+remote\.origin\.url=git@github\.com:mub/git\-extras\.git
+branch\.master\.remote=origin
+branch\.master\.merge=refs/heads/master
+.
+.fi
+.
+.IP "" 0
+.
+.SH "AUTHOR"
+Written by Leila Muhtasib <\fImuhtasib@gmail\.com\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-local-commits.1 b/man/man1/git-local-commits.1
new file mode 100644
index 00000000..58c8a96a
--- /dev/null
+++ b/man/man1/git-local-commits.1
@@ -0,0 +1,36 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-LOCAL\-COMMITS" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-local\-commits\fR \- List local commits
+.
+.SH "SYNOPSIS"
+\fBgit\-local\-commits\fR <args>
+.
+.SH "DESCRIPTION"
+Lists commits in the local branch that have not been pushed to origin\.
+.
+.SH "OPTIONS"
+<args>
+.
+.P
+All arguments passed to \fBgit\-local\-commits\fR will be passed directly to \fBgit\-log\fR\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git local\-commits \-\-graph
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Michael Komitee <\fImkomitee@gmail\.com\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-refactor.1 b/man/man1/git-refactor.1
new file mode 100644
index 00000000..da0bac56
--- /dev/null
+++ b/man/man1/git-refactor.1
@@ -0,0 +1,47 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-REFACTOR" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-refactor\fR \- Create refactor branch
+.
+.SH "SYNOPSIS"
+\fBgit\-refactor\fR [finish] <name>
+.
+.SH "DESCRIPTION"
+Create the given refactor branch
+.
+.SH "OPTIONS"
+<finish>
+.
+.P
+Merge and delete the refactor branch\.
+.
+.P
+<name>
+.
+.P
+The name of the refactor branch\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git refactor mainlib_refactor
+\.\.\.
+$ git commit \-m "Some changes"
+\.\.\.
+$ git checkout master
+$ git refactor finish mainlib_refactor
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Jesús Espino <\fIjespinog@gmail\.com\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-release.1 b/man/man1/git-release.1
new file mode 100644
index 00000000..aa7f81ce
--- /dev/null
+++ b/man/man1/git-release.1
@@ -0,0 +1,38 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-RELEASE" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-release\fR \- Commit, tag and push changes to the repository
+.
+.SH "SYNOPSIS"
+\fBgit\-release\fR <tagname>
+.
+.SH "DESCRIPTION"
+Commits changes with message "Release <tagname>", tags with the given <tagname> and pushes the branch / tags\.
+.
+.SH "OPTIONS"
+<tagname>
+.
+.SH "EXAMPLES"
+Release commit with the given <tagname>\.
+.
+.IP "" 4
+.
+.nf
+
+$ git release 0\.1\.0
+.
+.fi
+.
+.IP "" 0
+.
+.SH "AUTHOR"
+Written by Tj Holowaychuk <\fItj@vision\-media\.ca\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-rename-tag.1 b/man/man1/git-rename-tag.1
new file mode 100644
index 00000000..ed8a30cf
--- /dev/null
+++ b/man/man1/git-rename-tag.1
@@ -0,0 +1,58 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-RENAME\-TAG" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-rename\-tag\fR \- Rename a tag
+.
+.SH "SYNOPSIS"
+\fBgit\-rename\-tag\fR <old\-tag\-name> <new\-tag\-name>
+.
+.SH "DESCRIPTION"
+Rename a tag (locally and remotely)
+.
+.SH "OPTIONS"
+<old\-tag\-name>
+.
+.P
+The name of the tag you want to rename\.
+.
+.P
+<new\-tag\-name>
+.
+.P
+The new name of the tag\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git tag test
+$ git push \-\-tags
+Total 0 (delta 0), reused 0 (delta 0)
+To git@myserver\.com:myuser/myrepository\.git
+ * [new tag]         test \-> test
+$ git tag
+test
+$ git rename\-tag test test2
+Deleted tag \'test\' (was 1111111)
+Total 0 (delta 0), reused 0 (delta 0)
+To git@myserver\.com:myuser/myrepository\.git
+ * [new tag]         test2 \-> test2
+remote: warning: Deleting a non\-existent ref\.
+To git@myserver\.com:myuser/myrepository\.git
+ \- [deleted]         refs/tag/test
+$ git tag
+test2
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Jesús Espino <\fIjespinog@gmail\.com\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-repl.1 b/man/man1/git-repl.1
new file mode 100644
index 00000000..dda36f92
--- /dev/null
+++ b/man/man1/git-repl.1
@@ -0,0 +1,49 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-REPL" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-repl\fR \- git read\-eval\-print\-loop
+.
+.SH "SYNOPSIS"
+\fBgit\-repl\fR
+.
+.SH "DESCRIPTION"
+.
+.SH "OPTIONS"
+GIT read\-eval\-print\-loop:
+.
+.IP "" 4
+.
+.nf
+
+$ git repl
+
+git> ls\-files
+History\.md
+Makefile
+Readme\.md
+bin/git\-changelog
+bin/git\-count
+bin/git\-delete\-branch
+bin/git\-delete\-tag
+bin/git\-ignore
+bin/git\-release
+
+git> quit
+.
+.fi
+.
+.IP "" 0
+.
+.SH "EXAMPLES"
+.
+.SH "AUTHOR"
+Written by Tj Holowaychuk <\fItj@vision\-media\.ca\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-setup.1 b/man/man1/git-setup.1
new file mode 100644
index 00000000..964b41bc
--- /dev/null
+++ b/man/man1/git-setup.1
@@ -0,0 +1,36 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-SETUP" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-setup\fR \- Set up a git repository
+.
+.SH "SYNOPSIS"
+\fBgit\-setup\fR [<directory>]
+.
+.SH "DESCRIPTION"
+Set up a git repository if one doesn\'t exist, add all files and make an initial commit\.
+.
+.SH "OPTIONS"
+<directory>
+.
+.P
+The name of a new directory to setup\. By default, the current working directory\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git setup path/to/repository
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Aggelos Orfanakos <\fIagorf@agorf\.gr\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-show-tree.1 b/man/man1/git-show-tree.1
new file mode 100644
index 00000000..09f1eb23
--- /dev/null
+++ b/man/man1/git-show-tree.1
@@ -0,0 +1,63 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-SHOW\-TREE" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-show\-tree\fR \- show branch tree of commit history
+.
+.SH "SYNOPSIS"
+\fBgit\-show\-tree\fR
+.
+.SH "DESCRIPTION"
+Show the decorated graph view of one liner summarized commits from all branches\.
+.
+.SH "EXAMPLES"
+Output the commit history log for all branches as tree view:
+.
+.IP "" 4
+.
+.nf
+
+*   4b57684 (HEAD, develop) Merge branch upstream master\.
+|\e
+| *   515e94a Merge pull request #128 from nickl\-/git\-extras\-html\-hyperlinks
+| |\e
+| | * 815db8b (nickl/git\-extras\-html\-hyperlinks, git\-extras\-html\-hyperlinks) help ronn make hyperlinks\.
+| * | 7398d10 (nickl/develop) Fix #127 git\-ignore won\'t add duplicates\.
+| |/
+| | * ab72c1e (refs/stash) WIP on develop: 5e943f5 Fix #127 git\-ignore won\'t add duplicates\.
+| |/
+|/|
+* | 730ca89 (bolshakov) Rebase bolshakov with master
+|/
+* 60f8371 (origin/master, origin/HEAD, master) Merge pull request #126 from agrimaldi/fix\-changelog\-last\-tag
+* 9627780 (tag: 1\.7\.0) Release 1\.7\.0
+* 2e53ff6 (tag: 1\.6\.0) Release 1\.6\.0
+* bbd32d8 (tag: 1\.5\.1) Release 1\.5\.1
+| * 6b6b758 (nickl/gh\-pages, gh\-pages) add example git\-extras to gh\-pages
+| * 19cfd11 (origin/gh\-pages) Index page
+| | * 881a70e (tag: 1\.5\.0) Release 1\.5\.0
+| |/
+|/|
+* | 4db5ee0 (tag: 1\.4\.0) Release 1\.4\.0
+* | 9b0bc89 (tag: 1\.3\.0) Release 1\.3\.0
+* | be49961 (tag: 1\.2\.0) Release 1\.2\.0
+* | c1d2dfc (tag: 1\.1\.0) Release 1\.1\.0
+* | 4a56adb (tag: 1\.0\.0) Release 1\.0\.0
+* | 948308b (tag: 0\.9\.0) Release 0\.9\.0
+* | 40b131d (tag: 0\.8\.1) Release 0\.8\.1
+* | 391431d (tag: 0\.8\.0) Release 0\.8\.0
+.
+.fi
+.
+.IP "" 0
+.
+.SH "AUTHOR"
+Written by Nick Lombard \fIgithub@jigsoft\.co\.za\fR
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-squash.1 b/man/man1/git-squash.1
new file mode 100644
index 00000000..61795223
--- /dev/null
+++ b/man/man1/git-squash.1
@@ -0,0 +1,48 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-SQUASH" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-squash\fR \- Import changes form a branch
+.
+.SH "SYNOPSIS"
+\fBgit\-squash\fR <source\-branch> [<commit\-message>]
+.
+.SH "DESCRIPTION"
+Produce the working tree and index state as if a real merge happened without the commit or merge marks\.
+.
+.SH "OPTIONS"
+<source\-branch>
+.
+.P
+Branch to squash on the actual branch\.
+.
+.P
+<commit\-message>
+.
+.P
+If commit\-message is given, commit the squash result and delete the source\-branch\.
+.
+.SH "EXAMPLES"
+.
+.nf
+
+$ git squash my\-other\-branch
+Updating a2740f5\.\.533b19c
+Fast\-forward
+Squash commit \-\- not updating HEAD
+ my\-changed\-file | 1 +
+ 1 file changed, 1 insertion(+)
+$ git commit \-m "New commit without a real merge"
+.
+.fi
+.
+.SH "AUTHOR"
+Written by Jesús Espino <\fIjespinog@gmail\.com\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-summary.1 b/man/man1/git-summary.1
new file mode 100644
index 00000000..9e750225
--- /dev/null
+++ b/man/man1/git-summary.1
@@ -0,0 +1,79 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-SUMMARY" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-summary\fR \- Show repository summary
+.
+.SH "SYNOPSIS"
+\fBgit\-summary\fR [<commitish>]
+.
+.SH "DESCRIPTION"
+Shows a summary of the repository\.
+.
+.SH "OPTIONS"
+<commitish>
+.
+.P
+Summarize only the range of commits included in the <commitish>\.
+.
+.SH "EXAMPLES"
+Outputs a repo summary:
+.
+.IP "" 4
+.
+.nf
+
+$ git summary
+
+project  : express
+repo age : 10 months ago
+commits  : 1893
+active   : 93 days
+files    : 111
+authors  :
+ 1285 visionmedia
+  478 Tj Holowaychuk
+   48 Aaron Heckmann
+   34 csausdev
+   26 ciaranj
+    6 Guillermo Rauch
+    3 Nick Poulden
+    2 Brian McKinney
+    2 Benny Wong
+    1 Justin Lilly
+    1 James Herdman
+    1 Adam Sanderson
+    1 Viktor Kelemen
+    1 Gregory Ritter
+    1 Greg Ritter
+    1 ewoudj
+    1 isaacs
+    1 Matt Colyer
+.
+.fi
+.
+.IP "" 0
+.
+.P
+This command can also take a commitish, and will print a summary for the range of commits included in the commitish:
+.
+.IP "" 4
+.
+.nf
+
+$ git summary v42\.\.
+.
+.fi
+.
+.IP "" 0
+.
+.SH "AUTHOR"
+Written by Tj Holowaychuk <\fItj@vision\-media\.ca\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-touch.1 b/man/man1/git-touch.1
new file mode 100644
index 00000000..627f7638
--- /dev/null
+++ b/man/man1/git-touch.1
@@ -0,0 +1,31 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-TOUCH" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-touch\fR \- Touch and add file to the index
+.
+.SH "SYNOPSIS"
+\fBgit\-touch\fR <filename>
+.
+.SH "DESCRIPTION"
+Call \fBtouch\fR on the given file and add it to the current index\. Used one\-step creating new files\.
+.
+.SH "OPTIONS"
+<filename>
+.
+.P
+File to be touched\.
+.
+.SH "EXAMPLES"
+$ git touch Makefile
+.
+.SH "AUTHOR"
+Written by Alex McHale <\fIalexmchale@gmail\.com\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/man/man1/git-undo.1 b/man/man1/git-undo.1
new file mode 100644
index 00000000..774c5aeb
--- /dev/null
+++ b/man/man1/git-undo.1
@@ -0,0 +1,66 @@
+.\" generated with Ronn/v0.7.3
+.\" https://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-UNDO" "1" "July 2012" "" ""
+.
+.SH "NAME"
+\fBgit\-undo\fR \- Remove latest commits
+.
+.SH "SYNOPSIS"
+\fBgit\-undo\fR [<commitcount>] [\-s, \-\-soft, \-h, \-\-hard]
+.
+.SH "DESCRIPTION"
+Removes the latest commits\.
+.
+.SH "OPTIONS"
+\-\-soft or \-s
+.
+.P
+This is the default, only rolls back the commit but changes remain un\-staged\.
+.
+.P
+\-\-hard or \-h
+.
+.P
+This option wipes your commit(s), so that your changes cannot be recovered\. Use with care\.
+.
+.P
+<commitcount>
+.
+.P
+Number of commits to remove\. Defaults to \fI1\fR, thus remove the latest commit\.
+.
+.SH "EXAMPLES"
+Removes the latest commit\.
+.
+.IP "" 4
+.
+.nf
+
+$ git undo
+.
+.fi
+.
+.IP "" 0
+.
+.P
+Remove the latest 3 commits:
+.
+.IP "" 4
+.
+.nf
+
+$ git undo 3
+.
+.fi
+.
+.IP "" 0
+.
+.SH "AUTHOR"
+Written by Kenneth Reitz <\fIme@kennethreitz\.com\fR> and Nick Lombard <\fIgithub@jigsoft\.co\.za\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
diff --git a/z/z.sh b/z/z.sh
new file mode 100755
index 00000000..db5dab39
--- /dev/null
+++ b/z/z.sh
@@ -0,0 +1,207 @@
+# Copyright (c) 2009 rupa deadwyler under the WTFPL license
+
+# maintains a jump-list of the directories you actually use
+#
+# INSTALL:
+#   * put something like this in your .bashrc/.zshrc:
+#     . /path/to/z.sh
+#   * cd around for a while to build up the db
+#   * PROFIT!!
+#   * optionally:
+#     set $_Z_CMD in .bashrc/.zshrc to change the command (default z).
+#     set $_Z_DATA in .bashrc/.zshrc to change the datafile (default ~/.z).
+#     set $_Z_NO_RESOLVE_SYMLINKS to prevent symlink resolution.
+#     set $_Z_NO_PROMPT_COMMAND if you're handling PROMPT_COMMAND yourself.
+#
+# USE:
+#   * z foo     # cd to most frecent dir matching foo
+#   * z foo bar # cd to most frecent dir matching foo and bar
+#   * z -r foo  # cd to highest ranked dir matching foo
+#   * z -t foo  # cd to most recently accessed dir matching foo
+#   * z -l foo  # list all dirs matching foo (by frecency)
+
+_z() {
+
+ local datafile="${_Z_DATA:-$HOME/.z}"
+
+ # bail out if we don't own ~/.z (we're another user but our ENV is still set)
+ [ -f "$datafile" -a ! -O "$datafile" ] && return
+
+ # add entries
+ if [ "$1" = "--add" ]; then
+  shift
+
+  # $HOME isn't worth matching
+  [ "$*" = "$HOME" ] && return
+
+  # maintain the file
+  local tempfile
+  tempfile="$(mktemp $datafile.XXXXXX)" || return
+  while read line; do
+   [ -d "${line%%\|*}" ] && echo $line
+  done < "$datafile" | awk -v path="$*" -v now="$(date +%s)" -F"|" '
+   BEGIN {
+    rank[path] = 1
+    time[path] = now
+   }
+   $2 >= 1 {
+    if( $1 == path ) {
+     rank[$1] = $2 + 1
+     time[$1] = now
+    } else {
+     rank[$1] = $2
+     time[$1] = $3
+    }
+    count += $2
+   }
+   END {
+    if( count > 1000 ) {
+     for( i in rank ) print i "|" 0.9*rank[i] "|" time[i] # aging
+    } else for( i in rank ) print i "|" rank[i] "|" time[i]
+   }
+  ' 2>/dev/null >| "$tempfile"
+  if [ $? -ne 0 -a -f "$datafile" ]; then
+   env rm -f "$tempfile"
+  else
+   env mv -f "$tempfile" "$datafile"
+  fi
+
+ # tab completion
+ elif [ "$1" = "--complete" ]; then
+  while read line; do
+   [ -d "${line%%\|*}" ] && echo $line
+  done < "$datafile" | awk -v q="$2" -F"|" '
+   BEGIN {
+    if( q == tolower(q) ) nocase = 1
+    split(substr(q,3),fnd," ")
+   }
+   {
+    if( nocase ) {
+     for( i in fnd ) tolower($1) !~ tolower(fnd[i]) && $1 = ""
+    } else {
+     for( i in fnd ) $1 !~ fnd[i] && $1 = ""
+    }
+    if( $1 ) print $1
+   }
+  ' 2>/dev/null
+
+ else
+  # list/go
+  while [ "$1" ]; do case "$1" in
+   -h) echo "z [-h][-l][-r][-t] args" >&2; return;;
+   -l) local list=1;;
+   -r) local typ="rank";;
+   -t) local typ="recent";;
+   --) while [ "$1" ]; do shift; local fnd="$fnd $1";done;;
+    *) local fnd="$fnd $1";;
+  esac; local last=$1; shift; done
+  [ "$fnd" ] || local list=1
+
+  # if we hit enter on a completion just go there
+  case "$last" in
+   # completions will always start with /
+   /*) [ -z "$list" -a -d "$last" ] && cd "$last" && return;;
+  esac
+
+  # no file yet
+  [ -f "$datafile" ] || return
+
+  local cd
+  cd="$(while read line; do
+   [ -d "${line%%\|*}" ] && echo $line
+  done < "$datafile" | awk -v t="$(date +%s)" -v list="$list" -v typ="$typ" -v q="$fnd" -F"|" '
+   function frecent(rank, time) {
+    dx = t-time
+    if( dx < 3600 ) return rank*4
+    if( dx < 86400 ) return rank*2
+    if( dx < 604800 ) return rank/2
+    return rank/4
+   }
+   function output(files, toopen, override) {
+    if( list ) {
+     cmd = "sort -n >&2"
+     for( i in files ) if( files[i] ) printf "%-10s %s\n", files[i], i | cmd
+     if( override ) printf "%-10s %s\n", "common:", override > "/dev/stderr"
+    } else {
+     if( override ) toopen = override
+     print toopen
+    }
+   }
+   function common(matches) {
+    # shortest match
+    for( i in matches ) {
+     if( matches[i] && (!short || length(i) < length(short)) ) short = i
+    }
+    if( short == "/" ) return
+    # shortest match must be common to each match. escape special characters in
+    # a copy when testing, so we can return the original.
+    clean_short = short
+    gsub(/[\(\)\[\]\|]/, "\\\\&", clean_short)
+    for( i in matches ) if( matches[i] && i !~ clean_short ) return
+    return short
+   }
+   BEGIN { split(q, a, " "); oldf = noldf = -9999999999 }
+   {
+    if( typ == "rank" ) {
+     f = $2
+    } else if( typ == "recent" ) {
+     f = $3-t
+    } else f = frecent($2, $3)
+    wcase[$1] = nocase[$1] = f
+    for( i in a ) {
+     if( $1 !~ a[i] ) delete wcase[$1]
+     if( tolower($1) !~ tolower(a[i]) ) delete nocase[$1]
+    }
+    if( wcase[$1] && wcase[$1] > oldf ) {
+     cx = $1
+     oldf = wcase[$1]
+    } else if( nocase[$1] && nocase[$1] > noldf ) {
+     ncx = $1
+     noldf = nocase[$1]
+    }
+   }
+   END {
+    if( cx ) {
+     output(wcase, cx, common(wcase))
+    } else if( ncx ) output(nocase, ncx, common(nocase))
+   }
+  ')"
+  [ $? -gt 0 ] && return
+  [ "$cd" ] && cd "$cd"
+ fi
+}
+
+alias ${_Z_CMD:-z}='_z 2>&1'
+
+[ "$_Z_NO_RESOLVE_SYMLINKS" ] || _Z_RESOLVE_SYMLINKS="-P"
+
+if compctl &> /dev/null; then
+ [ "$_Z_NO_PROMPT_COMMAND" ] || {
+  # zsh populate directory list, avoid clobbering any other precmds
+  if [ "$_Z_NO_RESOLVE_SYMLINKS" ]; then
+    _z_precmd() {
+      _z --add "${PWD:a}"
+    }
+  else
+    _z_precmd() {
+      _z --add "${PWD:A}"
+    }
+  fi
+  precmd_functions+=(_z_precmd)
+ }
+ # zsh tab completion
+ _z_zsh_tab_completion() {
+  local compl
+  read -l compl
+  reply=(${(f)"$(_z --complete "$compl")"})
+ }
+ compctl -U -K _z_zsh_tab_completion _z
+elif complete &> /dev/null; then
+ # bash tab completion
+ complete -o filenames -C '_z --complete "$COMP_LINE"' ${_Z_CMD:-z}
+ [ "$_Z_NO_PROMPT_COMMAND" ] || {
+  # bash populate directory list. avoid clobbering other PROMPT_COMMANDs.
+  echo $PROMPT_COMMAND | grep -q "_z --add"
+  [ $? -gt 0 ] && PROMPT_COMMAND='_z --add "$(pwd '$_Z_RESOLVE_SYMLINKS' 2>/dev/null)" 2>/dev/null;'"$PROMPT_COMMAND"
+ }
+fi
diff --git a/zshrc b/zshrc
index e9c23252..59c681e4 100644
--- a/zshrc
+++ b/zshrc
@@ -47,3 +47,6 @@ if [ -d "${HOME}/.zsh" ] ; then
 		. "${HOME}/.zsh/${file}"
 	done
 fi
+
+export MANPATH="${HOME}/.man":$MANPATH
+. "${HOME}/bin/z.sh"