Repositories: git-utils.


Read about GIT here.


TMI is starting to collect a number of small utilities for git. Each utility 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.

  • git-local. Store local branches in a shared git repository under a private namespace. Upload, download, remove and list operations are provided. We 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. 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 script found at girocco.


These scripts are not packaged in the APT Repository. 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.