Subject: Re: bug#21559: 25.0.50; auto-revert-mode breaks git rebase

From: Dmitry Gutov <[email-masked]>
Date: Tue, 20 Feb 2018 13:37:18 +0200

On 2/20/18 9:40 AM, Michael Albinus wrote:

> I'm not so happy seeing git specific code in autorevert.el (yes, I know,
> it's just an environment variable). All git specifics shall be kept in
> vc-git.el. Otherwise, we would go into a dependency nightmare, soon.

But this way the patch is much smaller, isn't it? That has 
maintainability benefits too.

And using a variable would make more sense if we determine that other 
facilities, not just autorevert, make VC calls that we want to consider 
"background".

> Do
> you know, that magit would like to see this setting?

I imagine it would, if it makes Git calls during autorevert (and if 
doesn't, the var won't do anything). But we could let it make that 
choice by itself, of course.

> If this variable hurts for standard operation of vc-git, we could set it
> depending whether (auto)revert is running, or not. There is the variable
> `revert-buffer-in-progress-p', which is non-nil if reverting is in
> progress. I could set it also before calling `vc-refresh-state' in
> `auto-revert-handler'. And in vc-git.el, `process-environment' could be
> extended or not, depending on the value of `revert-buffer-in-progress-p'.

In which part of vc-git.el? Changing the implementation of two commands, 
like the original patch proposed, makes for a bigger change.

We could do that in vc-git-command, I suppose...