[MPlayer-cvslog] r19258 - trunk/DOCS/tech/oggless-xiph-codecs.txt

Uoti Urpala uoti.urpala at pp1.inet.fi
Thu Aug 17 20:01:27 CEST 2006


On Thu, 2006-08-17 at 15:52 +0200, Michael Niedermayer wrote:
> whats important for a version control system is IMHO that it doesnt place 
> weird limitations on what can be done
> * if i want to move a few files from one
>   repository to another then i should be able to do that with all the history
>   furthermore checking out old versions should still give identical results
>   not like what cvs did when you copied rcs files around

If you mean copying an individual file "with history" without affecting
any others this is quite complex. What does "with all the history" even
mean if other files referred to in the same changesets are not present?
How does the past history work with the past history of the new
repository, as they're completely distinct? There are a few approaches I
can think of but it's not trivial.

> * if i made a typo in a commit message i should be able to fix that, and it
>   should be vesioned too ideally so the old message isnt lost

In distributed systems the "fix" would need to be an independent change,
but on the other hand commit messages are normally part of the
corresponding changeset and not directly repository state. I'm not sure
whether anything distributed implements something like this.

> * if i work with several branches then i should be able to merge the not yet
>   merged changes from one branch into the other (with or if i choose so
>   without history) easily (like svn up) not with a hundread svn merge ;svn ci

Anything distributed does this.

> * if iam low on diskspace then i should be able to work with a "flat" checkout
>   while OTOH if i have a dialup or so connection then i should be able to
>   use a complete copy of the repository locally

Some distributed systems support this to varying degrees. Some knowledge
of the repository history can be required to create changesets etc, but
of course it's possible to make the client only work as a dumb interface
to the local files and have the server do all the work.




More information about the MPlayer-cvslog mailing list