owl2vcs is a set of tools designed to facilitate version control of OWL 2 ontologies using version control systems. It contains a commandline diff tool for OWL 2 ontologies integrated with Git and Mercurial. It detects axioms additions and removals, imports' additions and removals, ontology annotations' additions and removals, prefix additions, removals, modifications, and renames, ontology IRI and version IRI changes, and ontology format changes. It supports RDF/XML, OWL/XML, OWL Functional Syntax, Manchester OWL Syntax, and Turtle. It provides a changeset serializer and parser, two formats of changes, compact (like OWL Functional Syntax) and indented (the same, but more readable, using indents instead of parentheses), and four formats of IRIs: Simple, QName, Full, and Label.
cvs-fast-export analyzes a collection of RCS files in a CVS repository (or outside of one) and, when possible, emits an equivalent history in the form of a fast-import stream. Not all possible histories can be rendered this way; the program tries to emit useful warnings when it can't. The program can also produce a visualization of the resulting commit DAG in the DOT format handled by the graphviz suite. The package also includes cvssync, a tool for mirroring masters from remote CVS hosts.
gitolite is an access control layer on top of git. It allows you to setup git hosting on a central server, and have multiple "virtual" users (i.e., not "Unix" users) access multiple git repositories, with fine grained access control (read control at the repo level granularity, write control at branch/tag/file/dir level). It has several other features, comprehensive documentation, does not require root permissions, and does not depend on anything except git, Perl 5.8 or later, and any POSIX shell.
pepper is a commandline tool for retrieving statistics and generating reports from source code repositories. It ships with several graphical and textual reports, and is easily extensible using the Lua scripting language. It includes support for multiple version control systems, including Git and Subversion.
repos-tools is a set of command-line utilities to make work on your code repositories faster and easier. It lets you push, pull, build, and do other things on your repositories all at once. The supported (D)VCSes are Git, Subersion, Bazaar, and Mercurial. For GitHub users, forking, following, watching, and dealing with issues can be done from the shell.
CVS, GIT, and Mercurial as well as other well-known version control systems cannot version directories. In other words, you cannot add empty directories. A "workaround" for this issue is to use placeholder files that are placed into empty directories. These placeholder files can then be committed into the repository and will make sure that, upon checkout, the directory tree is entirely reconstructed. The problem with using placeholder files is that you need to create them, and need to delete them if they are not necessary anymore (because sub-directories or real files were added). With big source trees, managing these placeholder files can be cumbersome and error prone. MarkEmptyDirs can manage the creation/deletion of such placeholder files automatically. It creates placeholder files in all empty "leaf" directories. If later on new files or directories are put into such directories, the placeholder files are not necessary anymore, and are removed automatically.
0release is a program to generate source and binary releases automatically. With minimal configuration, 0release will generate a source tarball release candidate, build it to create a binary archive, upload them to your Web server, check the uploads, and tag the release in GIT and update the version number. It can run unit-tests and custom actions, such as building documentation, etc. For Zero Install users, it can also upload a signed XML metadata file about the release, allowing these users to upgrade automatically. Releases are signed with your GPG key.
gitg targets cases where it is useful to provide a graphical representation of Git data or actions. The history view is a good example, where graphical representation helps to get an overview of the repository. gitg does not aim to be an advanced tool that allows access to every feature of Git through a graphical interface. However, it will try to incorporate common actions that might require multiple actions on the command line (like staging, unstaging, reverting, and committing).