title: GIT Utilities
linktitle: git-utils
-parent: TOP
+parent: Home
ctime: 2009-12-10
Repositories: [git-utils](/gitweb/?p=git-utils.git;a=summary).
# Utilities
TMI is starting to collect a number of small utilities for git. Each utility
-has a man page describing its operation.
+has a man page describing its operation. A few notables:
+
+* `git-diffall`. Provides a facility for file-aware visual diff using an
+ external diff tool such as kdiff3, meld, or a similar tool.
* `git-empty-branch`. Create an empty branch in a local git repository.
use this tool to backup up local commits not yet suitable for pushing into a
local shared branch.
+* `git-overview`. A simple script that scans a directory tree for git repos,
+ showing the overall state of each.
+
* `git-publish-branch`. A shell version of the ruby script created by William
Morgan. See his [git utilities page](http://git-wt-commit.rubyforge.org).
We did not want to have to install ruby just for this one little utility.
+* `git-push-public`. Used by TMI to replicate changes made to open source
+ projects hosted on TMI private servers to the TMI public server.
+
+* `server-gc`. A tool to run git-gc on each bare git repository found within a
+ given filesystem directory tree. Newest versions of git generally make this
+ utility redundant.
+
+* `update-mirror`. Used by TMI to update a local git mirror of an upstream git
+ or svn repository. Derived from the clone.sh script found at
+ [girocco](http://repo.or.cz/w/girocco.git).
+
# Installation
-To install the utilities, copy the scripts to `/usr/local/bin` and ensure they
-have execute permission. Then copy the `*.1` files, which are the man pages,
-to `/usr/local/man/man1`.
+These scripts are not packaged in the [[aptrepo]]. To install the utilities,
+copy the scripts to `/usr/local/bin` and ensure they have execute permission.
+Then copy the `*.1` files, which are the man pages, to `/usr/local/man/man1`.