[RFC] Workingstyle of different VCS systems

dukju ahn dukjuahn at gmail.com
Fri Apr 13 16:42:19 UTC 2007


2007/4/13, Matthew Woehlke <mw_triad at users.sourceforge.net>:
> Andreas Pakulat wrote:
> > On 12.04.07 16:43:43, Matthew Woehlke wrote:
> >> Andras Mantia wrote:
> >>> I doubt svn locks anything. Another user can commit in the same file
> >>> easily while you are working on it. All you get is a conflict (and an
> >>> error message on commit).
> >> svn does atomic commits, therefore it has to support transactions. That
> >> means either locking, or ability to roll back partial transactions. Note
> >> that I'm talking about a lock that only lasts from when you hit enter
> >> after 'svn ci' until svn is done running, i.e. a few minutes at most in
> >> extreme cases. Perforce I /know/ works this way.
> >
> > Uhm, the length of the checkin depends on the amount of data you
> > checkin. I managed all the stuff for my thesis in SVN (pdf's, data,
> > latex, presentations and the visio files) and some commits took quite
> > some time, even on my DSL line. So it could as well be half an hour on
> > extreme cases or 2 hours on low-bandwidth network.
>
> Hmm, ok, I wasn't accounting for updating large multimdeia-like files.
> That would indeed take longer. :-)

No. svn commit automatically locks the file being committed.
We don't have to worry the conflict.
If one user is committing a file, than other users cannot commit
the same file.

> >>>> Anyway since the ideal is to be able to write an abstract GUI using
> >>>> these interfaces, we still need it in the interface. :-)
> >>> Do we want such a GUI? I mean, will the plugins only do backend stuff
> >>> and not plug their actions into the user interface and instead we have
> >>> another plugin for the GUI? It doesn't really make sense because of the
> >>> differences between the VCS variants.
> >> Why not? :-) One thing I get from this is that different VCS's /aren't/
> >> that different, or at least can be easily made to seem similar enough
> >> that you can do exactly this.

It is good to have a common GUI library, but each vcs plugin
should also have control to that GUI. I mean, we have commont
.ui file. And each plugin inherits and extends it.

A plugin only for dealing with GUI is not flexible. How the GUI
plugin can accmodate all the different and unique behavior of
each VCSs? We don't have to place much restriction on that.




More information about the KDevelop-devel mailing list