On Fri, 11 Jul 2025 14:12:38 +0300 Eli Zaretskii wrote: >> Cc: zipeilu@qq.com, Stephen Berman >> From: Sean Whitton >> Date: Fri, 11 Jul 2025 09:36:14 +0100 >> >> Hello, >> >> On Thu 10 Jul 2025 at 02:29am +02, Stephen Berman via "Bug reports for GNU >> Emacs, the Swiss army knife of text editors" wrote: >> >> > On Thu, 10 Jul 2025 03:37:40 +0800 "Zipei Lu" via "Bug reports for GNU >> > Emacs, the Swiss army knife of text editors" >> > wrote: >> > >> >> Here are the steps to reproduce the bug: >> >> 1. 'C-x d' to arbitrary directory without any version control repository. >> >> 2. Mark arbitrary number of files with 'm'. >> >> 3. Type 'C-x v v'. >> >> >> >> Then the mini buffer will display: >> >> >> >> No VC backend is responsible for c:/my/directory/ >> >> >> >> According to GNU Emacs manual 30.1.3.1, 'C-x v v' is expected to create >> >> a new repository in the directory. However, 'C-x v v' can still be able >> >> to create >> >> new repository in the buffer of a file(Not in the buffer of directory). >> > >> > This patch seems to DTRT, at least on initial testing with -Q: >> > >> > diff --git a/lisp/dired-aux.el b/lisp/dired-aux.el >> > index e5b08af2a30..d8b195d9a12 100644 >> > --- a/lisp/dired-aux.el >> > +++ b/lisp/dired-aux.el >> > @@ -4022,8 +4022,9 @@ dired-vc-next-action >> > ;;;###autoload >> > (defun dired-vc-deduce-fileset >> > (&optional state-model-only-files not-state-changing) >> > - (let ((backend (vc-responsible-backend default-directory)) >> > - (files (dired-get-marked-files nil nil nil nil t))) >> > + (let* ((files (dired-get-marked-files nil nil nil nil t)) >> > + (backend (or (vc-responsible-backend default-directory t) >> > + (vc-backend-for-registration (car files))))) >> > (when (and (not not-state-changing) >> > (cl-some #'file-directory-p files)) >> > (user-error "\ >> >> I think this is okay, please install. > > Please don't ignore my comment in > > https://lists.gnu.org/archive/html/help-gnu-emacs/2025-07/msg00090.html I wanted to reply to that so I'll do it here; here's the context: > From: Eli Zaretskii > Subject: Re: Unable to create new Git repo with VC utilities > To: Stephen Berman > Cc: rpluim@gmail.com, lzpzipei@gmail.com, help-gnu-emacs@gnu.org > Date: Thu, 10 Jul 2025 07:52:07 +0300 (1 day, 6 hours, 38 minutes ago) > >> From: Stephen Berman >> Cc: rpluim@gmail.com, lzpzipei@gmail.com, help-gnu-emacs@gnu.org >> Date: Wed, 09 Jul 2025 19:55:54 +0200 [...] >> >> This patch seems to DTRT, at least on initial testing: [...] >> > Thanks, but vc-backend-for-registration is not autoloaded, so I think >> > something is still missing. >> >> But vc-responsible-backend is called first and it is autoloaded. > > It is not a good idea to rely on that. It's fragile: one simple > change to the source, and the command will signal an error. I'm not sure what you mean by "one simple change to the source". But I did see this warning after rebuilding emacs: ⛔ Warning (native-compiler): dired-aux.el:4027:24: Warning: the function ‘vc-backend-for-registration’ is not known to be defined. With the following patch, there is no longer such a warning; does it also allay your reservations?