the

     A-A-P logo     

project


 

tools useful for A-A-P

The intention for A-A-P is to use existing tools as much as possible. To find out which tools can be used this overview has been compiled.
    Some tools cannot be used directly, but function as an example or can be invoked by A-A-P (e.g., commercial tools and programs which are not portable). Unless noted otherwise, tools are open-source.
    If you find a tool that would be useful for A-A-P but is not listed here, or when information is incorrect, send a message to Bram AT a-a-p.org.
    Note: this list is not intended to be complete. Information that is irrelevant for A-A-P is omitted.

Script languages       Build       Install       Issue Tracking       Version control       Browse       IDEs       Various


Version control and source code distribution

In A-A-P version control is more than storing all versions in one central place. Versions of a program can exist in many places, sometimes only consisting of a patch on top of a generic version.

Storing source code of a project in a place where others can download it from is equal to distributing source code. Therefore this functionality is included here. Tools for building from source code are found under Build, tools for installing from binaries under Install.

A-A-P intends to support many existing version control systems, because it's not easy to switch to another one for existing projects. And "company rules" may force a specific system upon you.
For new projects a flexible version control and distribution system is needed. It should be:

  • Easy to use
  • Support many developers that are working in chaotic cooperation
  • Support the existence of many different versions while working towards one central version
The overview is used to get a good idea of which version control tools need to be supported, and to find the one preferred for new projects.
Arch
Still new, but claims to be better than CVS and Subversion.
Allows each developer to create a branch and make it available to others. Interesting!
Several people have mentioned it works well. Should be supported by Aap.
CVS
A widely used system for open-source software.
Disadvantages (Dave Brown):
  • requires a central server
  • commits are not atomic
  • branches are painful
  • rearranging directory structure is discouraged
GUI frontends to CVS:
jcvs: in Java
SmartCVS: in Java, with netbeans (free and commercial versions)
TkCVS: in Tcl/Tk
WinCvs: for MS-Windows, using MFC
MacCvs: for Macintosh, using Metroworks Powerplant
gCvs: for Unix, using GTK+
LinCVS: for Unix, using Qt, easy to use
MacCvsPro: for Macintosh, in C++
MacCvsClient: for Macintosh, in C++
cervisia: in C++ with Qt library.
wxcvs: in Python, using wxpython; not available yet.
Related items:
cvsup
Updater for CVS. Used for FreeBSD ports. Works well.
Important for A-A-P.
cvsweb
Viewer for files in CVS. Written in Perl?
viewcvs
CVS viewer like cvsweb. Written in Python.
Sand Web
Web based Sandbox management tool. Based off ideas from CVSWeb and CVSWebClient. Written using Object Oriented Perl.
In early development, might provide a few interesting ideas.
cvswebclient
Branch of cvsweb. Appears to be no longer supported.
mkdist
Distribution builder, autoconf and CVS based.
cvsutils
CVS release utilities. A few small scripts.
Could be used for ideas.
cvs-nserver
CVS with rewritten network code. Provides various authentication choices, as well as improved security.
trug
Wrapper for CVS in Python. Aims to be more process/activity oriented.
Doesn't look very interesting for A-A-P.
kde-cvsbuild
CVS-updater and builder for building KDE. Bash shell script.
Can be used of an example of what A-A-P should be able to do.
sfcvs
Tool for interfacing to CVS from Unix shell scripts and Python. Only planned, nothing available yet.
Also: CVS community site
Subversion
An improvement and complete replacement of CVS. Open source.
Supports renames, symbolic links, atomic commits, cheap branching and tagging, etc.
Version 1.0 is now available.
Aegis
An improvement and complete replacement of CVS. Open source.
Comprehensive system. For Unix only.
Unclear how many people use this. Recommended by SCons author.
Vesta
Configuration management for Unix in C++. Also does building. Mature, exists for ten years. Comes from Compaq. Uses a central repository, mapped onto a file system. Uses a long list of commands. Looks quite complicated, to be used by professionals. Was commercial, but will be released as open source soon.
Provides some good ideas of what problems need to be solved (e.g., with CVS, make and clearcase).
Bitkeeper
Commercial. Recommended by several people. Handles renaming of files.
Free use is possible when "Open Logging" is used.
Closed source.
Perforce
Fast Software Configuration Management System. Uses a central database. Runs on many platforms. Commercial, free upto two users.
Can perhaps be used for ideas.
OpenCM
Claims to be better than CVS in the field of support for renames and configuration, cryptographic authentication and access control, and first-class branches. It realistic enough to mention that it is not as feature rich as CVS.
Still under development. No practical experience known.
PVCS
Commercial Configuration Management tools.
Unclear how useful this is.
Clearcase
Commercial Configuration Management tools.
Apparently widely used.
sccs
Source Code Control System. Standard on Unix systems. Simple tools, only for local systems.
Others tools provide much more functionality.
rcs
The good old Revision Control System. Simple tools, only for local systems.
Others tools provide much more functionality. CVS is built upon RCS.
continuus
Revision Control System. Now called "Telelogic Synergy". Big and expensive.
Could be used for a few ideas.
prcs
Works like CVS, SCCS, RCS et al. Claims to be much simpler to use. Does not support distributed development yet, client-server is being worked on.
Appears to be slowly developed.
SourceSafe
Commercial and only for MS-Windows.
It's used, thus A-A-P should interface with it.
cbe
Code Building environment. Written in Java Can also be used as a make system. Can be file based or use a database.
Unclear how useful this is.
project1
Web-based project management in Java. Includes Appointment, bug Tracking System, Task Management, Product Management, Billing Modules. Only in the startup phase.
 
  The A-A-P pages:
home
news
Zimbu award
documentation
     Recipe examples
     Aap manual
     Agide tutorial
     features
     presentations
download
     Aap version log
     Agide version log
     ported apps
     packages
maillists and chat
plan and tasks
     SourceForge pages
     Aap todo list
     Agide todo list
architecture
     use cases
     modules
     interfaces
     design decisions
tools overview
     script languages
     build tools
     Install tools
     issue tracking
     version control
     browse tools
     IDEs
     various tools



Zimbu!



KwMap.net - browse the Keyword Map of A-a-p.org
 
funded by:

NLnet
	 logo


Send comments on this page to Webmaster AT a-a-p.org.            Hosted by SourceForge Logo            Also known as www.Agide.org.