emacs-devel
[Top][All Lists]
Advanced

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

Re: vc-directory breakage


From: Dan Nicolaescu
Subject: Re: vc-directory breakage
Date: Tue, 06 May 2008 09:34:05 -0700

"Eric S. Raymond" <address@hidden> writes:

  > Stefan Monnier <address@hidden>:
  > > I believe you have misunderstood the request, then: "support the multi-VCS
  > > case" means exactly what Dan asks, which is "make sure only one backend
  > > is used for a given command, even if the command includes files that are
  > > under various backends".
  > > 
  > > I.e. the issue is not "several subdirs of *vc-dir* which each use
  > > a different backend", but "all the files under *vc-dir* are under the
  > > control of several backends at the same time".
  > 
  > I understood the second part.  But your first paragraph leaves me
  > more confused than I was before.
  > 
  > It is already the case that "only one backend is used for a given
  > command, even if the command includes files that are under various
  > backends".  If a fileset is not all owned by the same backend, a
  > consistency check in vc-deduce-fileset will fail.  And C-u C-x v v 
  > allows us to change the preferred backend for a set of files.
  > 
  > What I don't see is what any of this has to do with keeping a buffer-local
  > backend variable per directory, which is what Dan is saying he wants.  By
  > hypothesis, backend is a per-*file* property.  I don't see how trying to 
  > cache it per directory can be a good idea.

It is not per-directory, it is per vc-dir view.  vc-dir was designed to
show the VC state of a subdirectory through a specific backend.  There
are UI features that take advantage from doing that: the headers can
show backend specific information, things like branches, the module name
for CVS, the repository, etc.  Also backends provide backend specific
menus (git and hg already do that).
This will be a complete mess if headers/menus from multiple backends
would appear.
It is still possible to use different backends for the same
directory: just add a prefix arg to vc-dir that asks about what backend
to use.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]