Vesta Commands for CVS Users

This page provides the closest vesta equivalent commands for common CVS commands.

For a comparison at the conceptual level, see VestaConceptsForCvsUsers.

Vesta is a version control tool (like CVS) and a build management tool (like make) all in one, so see also VestaForMakeUsers.

(compare these similar lists around the web: http://wiki.gnuarch.org/Learning_20Arch_20commands_20for_20CVS_20users; http://www.bitkeeper.com/cvs2bk.html)

CVS

Vesta

Comment

setenv CVSROOT /some/dir

Vesta's root for the repository defaults to /vesta/ on all systems. vgetconfig UserInterface AppendableRootName reports it.

the root is the top-level dir of the entire repository

namespace - Vesta also has something called a namespace which is another level of "root"-ing. Each project usually defines a "domain name" for themeselves, eg, /vesta/project.example.com/. The domain namespace can be set in the config file, usually /etc/vesta.cfg. The config file can be reported via vgetconfig -L. Both levels of root can be reported via vgetconfig UserInterface DefaultPackageParent

In terms of levels of hierarchy, the vesta namespace roughly corresponds to the network node upon which the CVS repository resides, altho all vesta namespaces are under /vesta/, since /vesta/ is a global namespace for cross-site collaboration.

work-area root - Vesta also defines its own root for all users' work areas; defaults to /vesta-work/ and can be reported via vgetconfig UserInterface MutableRootName. The work area for a given user is /vesta-work/$USER.

???

vcreate for each package in the project

create new project

cvs co aka cvs checkout

vcheckout -N

non-exclusive checkout. With vesta you only check-out the packages you need to change, but each one you need must be checked-out separately

n/a

vcheckout

exclusive checkout. CVS does not have exclusive checkouts. With vesta you only check-out the packages you need to change, but each one you need must be checked-out separately.

cvs ci aka cvs checkin aka cvs commit

exclusive: vcheckin; non-exclusive: vcheckout -o your_non_exclusive_checkout then vcheckin

vcheckin only works with exclusive checkouts

cvs add

edit and save the file directly in your work area, or copy it into your work area.

Add a new file to a checked-out dir.

cvs update

manually diff3 then patch (well-known gnu utilities). You have to go find the version dirs yourself.

merging others' and your changes into your work area

cvs diff

vdiff

List changes between the version you checked out, and your work area. vdiff comming soon. vdiff -r by default.

n/a

vsdiff

Compares current work-area with most recent snapshot. vsdiff comming soon. vsdiff -r by default. CVS doenst have work-area snapshots.

cvs stat

vupdate -n -t -a -u -m

reports modification status of your work dir. vupdate -n -t -a -u -m tells what would happen if you updated to point to all your latest edits.

cvs update -n

vupdate -n -t -a -u

reports modification status of your and others' changes. vupdate -n -t -a -u tells what would happend if you updated to point to everybody's latest edits -- exclusive checkouts only

cvs remove

vrm

vrm leaves behind a ghost

cvs export

vmake -shipto