Re: [Gnome-devtools] gnome-vcs: the start



> I have written down my ideas on the subject, and I
> would apreciate it if everyone could post their
> ideas/comments/criticism. I tink this list can be used
> (since it seems to be almost dead anyway)...

This list is entirely appropriate.

> gnome-vcs: What and why?
> 
> Almost all projects these days have some kind of version control. Whether
> the project is open source or commercial, version control is present
> everywhere.
> There are different kinds of version control systems available, commercial
> or free. Those systems have similar functionality, but the way they work
> is slightly different. Switching regularly between 2 or more system can be
> quite confusing.
> Most of the version control systems are based on a command line system,
> although often a graphical user interface is present. Usually they also
> have some kind of integration with a development environment.
> The main idea behind gnome-vcs is to provide a common interface to
> all these version control systems. This interface can then be used in
> different kinds of applications like editors or IDEs. The advantage of
> having a common interface is that a user only has to learn one set of
> commands but still has access to all version control systems.
> Gnome-vcs only provides a programmatical interface. It is not the intent
> to write command-line tools although that might be a useful extension
> later.
> 
> The implementation will be based on a CORBA interface, implemented using
> Bonobo. There are 2 parts to the implementation: a common interface and
> an implementation of this interface for all supported version control
> systems. To test the validity of the interface, 2 very different version
> control systems will be implemented: cvs and ClearCase(1). cvs is a widely
> used system in the free software world, while ClearCase is its counterpart
> for the commercial software world.
> 
> Details are still sketchy at best, but here goes.
> The common interface is the most important part. It has the following
> functions:
> - Select version control system. Because there can be different version
>   control systems installed on any single system, this function allows a
>   user to select which he wants to use.

May want to add a bit of functionality to try an autodect the vcs - i.e.
look for CVS dirs.

> - New project. Using this command, the user can create a new project in the
>   vcs database. This will usually just create a directory in the vcs database.

This is the 'import' command in cvs.

> - Check out. This gets a file out of the vcs database and allows a user to
>   edit the file.
>   For cvs, this operation probably does nothing, except maybe to check
>   whether the most recent version is present.
>   For ClearCase, the file will be checked out (in the ClearCase meaning).

What is the ClearCase meaning.

> - Undo check out. Using this operation, a check out can be cancelled. The
>   changes done to the file will not be incorporated into the vcs database.
>   For cvs, this will be a 'release'.
>   For ClearCase, the unco command will be run.

cvs release will actually delete the file I think.  You also want to
revive the file.

> - Check in. If the changes are to be kept, a file needs to be checked in.
>   It will be stored in the vcs database. The user is asked to provide a
>   log which details the changes he did in the file.
>   For cvs, this will be a commit. Or at least, the file will be marked
>   to be committed. Usually single files are not committed in cvs, which
>   makes this command a bit awkward.
>   For ClearCase, the file will be checked in.

An existing file is essentially marked for commit when its changed.

> - Disconnect. Using this command, the user can disconnect from a vcs database.
>   For cvs, this will do a logout and probably a commit (if the user wants to).
>   For ClearCase, nothing needs to be done.

Logout and login for cvs only apply in the :pserver case.  Using cvs via
its rsh or local stuff won't require a password directly.

-JP
--
=======================================================================
JP Rosevear				jpr helixcode com
Helix Code Inc.				http://www.helixcode.com




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]