'vcs' section (6/1)


transaction-based software configuration management

Aegis provides a framework within which a team of developers may work on many changes to a program independently, and Aegis coordinates integrating these changes back into the master source of the program, with as little disruption as possible. . Aegis simplifies the problems associated with multiple developers and development trees by using a transaction-based approach to version control, along with a web-browsable repository and an integrated testing mechanism. . See aegis-doc for documentation, aegis-tk for a Tk based user interface, and aegis-web for a web based user interface.


easy to use distributed version control system

Breezy is a distributed version control system designed to be easy to use and intuitive, able to adapt to many file formats and workflows, reliable, and easily extendable. . Out of the box, Breezy supports both the Git and Bazaar repository formats.

breezy plugin for Debian package management

brz-debian is a plugin for the breezy version control system that helps to automate the task of maintaining Debian packages using breezy. It is similar in intent to cvs-buildpackage, svn-buildpackage and the similar scripts. . It builds a Debian package from a branch, optionally using a separate upstream tarball.

Focused patch plugin support for Bazaar branches in Breezy

Loom is a Breezy plugin to assist in developing focused patches. It adds a 'loom' to a Bazaar branch. . A loom allows the development of multiple patches at once, while still giving each patch a branch of its own.


easy to use distributed version control system

Bazaar is a distributed version control system designed to be easy to use and intuitive, able to adapt to many workflows, reliable, and easily extendable. . Publishing of branches can be done over plain HTTP, that is, no special software is needed on the server to host Bazaar branches. Branches can be pushed to the server via sftp (which most SSH installations come with), FTP, or over a custom and faster protocol if bzr is installed in the remote end. . Merging in Bazaar is easy, as the implementation is able to avoid many spurious conflicts, deals well with repeated merges between branches, and is able to handle modifications to renamed files correctly. . Bazaar is written in Python, and has a flexible plugin interface which can be used to extend its functionality. Many plugins exist, providing useful commands (bzrtools), graphical interfaces (qbzr), or native interaction with Subversion branches (bzr-svn). . Install python-paramiko if you are going to push branches to remote hosts with sftp.

bzr plugin for Debian package management

bzr-builddeb is a plugin for the bzr version control system that helps to automate the task of maintaining Debian packages using bzr. It is similar in intent to cvs-buildpackage, svn-buildpackage and the similar scripts. . It builds a Debian package from a bzr branch, optionally using a separate upstream tarball.

Notification email plugin for Bazaar

Plugin for Bazaar that can send notification emails at commit time. . It supports sending (partial) diffs of the commit.

GUI application for using Bazaar

Bazaar Explorer is a desktop application providing an easy-to-use interface to the Bazaar version control system. It is designed to be simple enough for casual users of version control, yet powerful enough for experts to be productive. . It provides a high level interface to all commonly used features, launching "applets" from the QBzr plug-in to provide most of the functionality.

Fast-import/fast-export plugin for Bazaar

Bazaar Fast Import is a plugin providing fast loading of revision control data into Bazaar. . It is designed to be used in combination with front-end programs that generate a command/data stream for it to process. Front-ends are available for a wide range of foreign VCS tools including Subversion, CVS, Git, Mercurial, Darcs and Perforce. New front-ends are easy to develop in whatever programming language you prefer, making Bazaar Fast Import useful for teams needing a custom migration solution.

Bazaar plugin providing Git integration

This is a plugin for Bazaar that adds the ability to use Git repositories, both local and remote (git://, git+ssh:// and http://). It integrates with the regular Bazaar UI, and provides a new Bazaar subcommand `git-import` which imports all branches from a Git repository. . An experimental remote helper for Git that can push to and fetch from Bazaar branches is also provided.

Focused patch plugin support for Bazaar

Loom is a Bazaar plugin to assist in developing focused patches. It adds a 'loom' to a bzr branch. . A loom allows the development of multiple patches at once, while still giving each patch a branch of its own.

Bazaar plugin for managing a pipeline of changes

A Bazaar plugin helps you organize your changes into sections called "pipes" . Pipelines can help you: . * focus on each set of changes as a coherent piece, without being distracted by other sets of changes. * respect diff size limits when submitting changes * avoid reviewer fatigue when submitting changes for code review * maintain a set of patches against an upstream branch

search plugin for Bazaar

This is a plugin for Bazaar that can index and search local and remote branches. . It adds a "index" and a "search" command to the Bazaar command-line UI.

statistics plugin for Bazaar

This is a simple plugin for Bazaar that can list the contributors to a branch and what they worked on. . It adds two extra subcommands to Bazaar to list the committers by number of commits and by their type of contribution.

Bazaar commit and push tweet plugin

This plugin posts messages to Twitter or Identi.ca on commit and push new revisions. You can authenticate with twitter-auth command and just use commit or push commands to tweet. . This plugin adds twitter-auth and twitter-branchid commands.

Bazaar plugin for uploading to web servers

This is a plugin for Bazaar that incrementally uploads changes in a Bazaar branch to a dumb server. . Web sites are often hosted on servers where Bazaar can not be installed. In other cases, the web site must not give access to its corresponding branch (for security reasons for example). Finally, web hosting providers often provide only ftp access to upload sites. This plugin uploads only the relevant changes since the last upload using the ftp or sftp protocols. . It adds a "upload" subcommand to bzr.

XML Communication plugin for Bazaar

Plugin for Bazaar that provides access an XML/RPC interface to the core Bazaar commands. . This plugin is mainly useful for other applications that need to use Bazaar but are not written in Python.

Collection of tools for bzr

This package contains a collection of plugins for bzr - a distributed version control system. Some of these tools may work their way into bzr itself at some point, and some are just convenient addons useful for day to day operations. . bzrtools actually includes: * rspush: Push local changes to a remote server using rsync instead sftp. * graph-ancestry: Use graphviz to produce graphs of branch ancestry. * shell: Start up a command interpreter that run bzr natively, providing autocompletion. * patch: Apply a specified patch to your tree, that can be a file or URL. * heads: Show all revisions in a repository not having descendants.

D-Bus service for accessing CVS repositories

This package provides a D-Bus service for browsing and manipulating remote CVS repositories. Applications may make use of it directly from C++, or access the service over D-Bus. . This package is part of the KDE Software Development Kit module.

utility to commit fine grained patches to source code control repositories

Normally version control systems don't allow fine grained commits. commit-patch allows the user to control exactly what gets committed by letting the user supply a patch to be committed rather than using the files in the current working directory. . commit-patch supports Darcs, Git, Mercurial, Bazaar, Monotone, Subversion, or CVS repositories. . Also included is an Emacs interface to commit-patch. It allows you to just hit C-c C-c in any patch buffer to apply and commit only the changes indicated by the patch, regardless of the changes in your working directory.


Clone of the Unix SCCS revision-control system

SCCS is a per-file revision-control system. It is a de-facto standard on commercial Unices, being shipped with most of those. . GNU-based systems usually use RCS instead of SCCS - indeed it has been a choice to design RCS instead of implementing a free SCCS clone. RCS was designed to address some problems with SCCS (eg. extraction time grows linearly with the size of the history file), but it has anyway problems of its own (eg. extraction time of branches grows with trunk length). . Some project-wide revision-control systems, like Aegis, can make use of CSSC instead of RCS. . This package also provides a web frontend to navigate the history of files under SCCS control, with optional support for formatting of manpages using groff.


Concurrent Versions System

CVS is a version control system, which allows you to keep access to old versions of files (usually source code), keep a log of who, when, and why changes occurred, etc., like RCS or SCCS. It handles multiple developers, multiple directories, triggers to enable/log/control various operations, and can work over a wide area network. The texinfo manual provides further information on more tasks that it can perform. . There are some tasks that are not covered by CVS. They can be done in conjunction with CVS but will tend to require some script-writing and software other than CVS. These tasks are bug-tracking, build management (that is, make and make-like tools), and automated testing. However, CVS makes these tasks easier. . This package contains a CVS binary which can act as both client and server, although there is no CVS dæmon; to access remote repositories, please use :extssh: not :pserver: any more.

Export an RCS or CVS history as a fast-import stream

cvs-fast-export, formerly "parsecvs", does what its new name implies: exports CVS repositories in a format suitable for git fast-import. . This program 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 distribution includes a tool, cvssync, for fetching masters from CVS remote repositories so cvs-fast-export can see them. You will need rsync installed to use it. . A wrapper script called cvsconvert runs a conversion to git and looks for content mismatches with the original CVS. You will need CVS and Git installed to use it. . Also included is a tool called cvsreduce that strips content out of trees of RCS/CVS masters, leaving only metadata structure in place.

Convert a cvs repository to a subversion, bazaar or git repository

Converts a CVS repository (including its branches and tags) to a Subversion, Bazaar or Git repository. It is designed for one-time conversions, not for repeated synchronizations between CVS and Subversion, Bazaar or Git.


chroot wrapper to run 'cvs pserver' more securely

cvsd is a wrapper program for cvs in pserver mode. it will run 'cvs pserver' under a special uid/gid in a chroot jail. cvsd is run as a daemon and is controlled through a configuration file. It is relatively easy to configure and provides tools for setting up a rootjail. . This server can be useful if you want to run a public cvs pserver. You should however be aware of the security limitations of running a cvs pserver. If you want any kind of authentication you should really consider using secure shell as a secure authentication mechanism and transport. Passwords used with cvs pserver are transmitted in plaintext. . You should probably disable the pserver from the cvs package.

Summarize differences in a CVS repository

cvsdelta summarizes the difference between a CVS project and its local version. It detects files that have been added and removed, and of existing files it counts the number of lines that have been added, deleted, and changed. It filters project changes by using .cvsignore files, both system-wide and locally.


CGI interface to your CVS repository

cvsweb is a WWW CGI script that provides remote access to your CVS repository. It allows browsing of the full tree, with configurable access controls. It will display the revision history of a file, as well as produce diffs between revisions and allow downloading any revision of the whole file.


distributed, interactive, smart revision control system

Darcs is a free, open source revision control system. It is: . * Distributed: Every user has access to the full command set, removing boundaries between server and client or committer and non-committers. * Interactive: Darcs is easy to learn and efficient to use because it asks you questions in response to simple commands, giving you choices in your work flow. You can choose to record one change in a file, while ignoring another. As you update from upstream, you can review each patch name, even the full "diff" for interesting patches. * Smart: Originally developed by physicist David Roundy, darcs is based on a unique algebra of patches. This smartness lets you respond to changing demands in ways that would otherwise not be possible.

Darcs add-on that sends mail about newly pushed changes

It is often desirable to send mail about new changes to software to a mailing list as soon as they are committed to a version control repository. Darcs-monitor adds this functionality to Darcs, an advanced revision control system. . Darcs-monitor is most commonly used as a Darcs apply post-hook, so that email is sent as soon as changes are pushed to the repository under monitoring. . Mails sent by darcs-monitor are configurable, and they can contain the diff of the changes, as well as change metadata. . You will need a mail transport agent (MTA) such as Exim in all but the most unusual situations.


patch maintenance system for Debian source packages

dpatch is an easy to use patch system for Debian packages, somewhat similar to the dbs package, but much simpler to use. . It lets you store patches and other simple customization templates in debian/patches and otherwise does not require much reorganization of your source tree. To get the patches applied at build time you simply need to include a makefile snippet and then depend on the patch/unpatch target in the build or clean stage of debian/rules - or you can use the dpatch patching script directly. . It can easily apply patches only on specific architectures if needed.