|
Package:
ArX (a revision control system)
Function:
ArX performs revision control offering fancy
features for branching and merging. It provides distributed
repositories (repositories spread over multiple hosts) and a
global (world-wide) namespace for branches and revisions.
Key Features:
ArX is simple, small, and featureful.
Distributed repositories are especially appropriate for
projects developed in the "open source" style -- with
geographically distributed developers and sub-teams, loosely
and flexibly cooperating.
ArX's fancy merging features are ideal for projects
supporting multiple concurrent releases and/or performing a
lot of development in separate branches.
PDF and HTML documentation are included.
Licensing:
ArX is distributed under the terms of
the GNU General Public License, Version 2, as published by the
Free Software Foundation.
Prerequisites:
standard C and C++ compiler
Posix libc.a (standard C library)
GNU Make
GNU tar
GNU patch
most of the standard Posix shell, text, and file utilities
Recommended and Disrecommended Applications:
ArX is brand new. The recommended application at this stage
is evaluation, help with porting, and help with testing.
Given resources for robust testing, ArX could be made ready
for heavy-duty, mission critical application within months --
but absent those resources, ArX suffers from the risks
associated with brand-new software.
If your projects are characterized by distributed development,
consider evaluating ArX and finding ways to contribute to a
polished, commercial-quality release.
Limitations:
The primary limitation is that ArX needs porting and testing.
A secondary limitation is that ArX likes to operate on
whole-trees, not individual files. This limitation can be
overcome with further development, though it remains to be
seen if user's truly miss such features.
Size:
The core of ArX is around 40K lines of code, mostly shell and
awk scripts.
ArX relies on the Hackerlab C library, which
adds considerably to the overall code size. It is possible to
eliminate this dependency, but not necessarily desirable.
Performance:
ArX has some nice performance characteristics. At the moment,
ArX can still be quite slow, but there are many possible ways
to speed it up.
Repositories are stored in compressed format and tree-deltas
are efficiently represented. This both saves disk space and
reduces network traffic.
On the client side, ArX makes heavy use of caching to speed
up some operations and make detached operation possible.
|