On 26/09/19 11:13PM, Johannes Sixt wrote:
> Am 26.09.19 um 21:15 schrieb Pratyush Yadav:
> > Reading the Stackoverflow link, it seems this is already possible via an 
> > undocumented config variable "gui.gcwarning". I haven't tried using it 
> > though, but I see no reason for it to not work (looking at 
> > git-gui.sh:4141).
> 
> Ah! That explains why I don't see the message on one of my computers,
> but I do see on others. I must have reset gui.gcwarning there a decade
> ago, and forgot about it.
> 
> > Maybe we should add this variable in the options dialog, so people at 
> > least know it exists?
> 
> That may be the most reasonable thing to do, IMO.
> 
> >> What about a configurable limit, but still show the dialog?
> > 
> > Do people really care that much about configuring this limit to warrant 
> > something like this? 
> 
> Never mind. We don't need it if there is a simple switch.
> 
> > Talking about auto compression, would it be a better idea to let users 
> > disable the dialog, and then if they do want auto compression, they can 
> > just run a cron job (or the Windows equivalent) to do this on their 
> > repos? What reasons do people have to have this feature in git-gui, 
> > instead of running cron jobs?
> 
> This is a GUI. It was intended for people with a dislike of the command
> line. If you avoid the command line as much as possible, you never get
> to see any object statistics; yet, all operations would slow down
> gradually due to object bloat with no way out. Remember that this
> feature was invented long before auto-gc came to existence. Not to
> mention that git-gui uses plumbing mostly where auto-gc would not
> trigger anyway.

Marc's reply to this thread seems to suggest he has had a great 
experience with this feature disabled, because "the rest of git's 
auto-gc machinery is now working quite well (compared to when git-gui 
was first introduced)".

I personally am not very familiar with the details of Git's auto-gc, and 
Googling around didn't really give out any promising results.

What I gather from reading the man page is that "some commands" run 
git-gc automatically. There isn't much mention of which those commands 
are. But you say that plumbing does not trigger auto-gc, so it would not 
get triggered by people using git-gui.

So here's what I propose: why don't we try to do something similar? What 
about running `git-gc --auto` in the background when the user makes a 
commit (which I assume is the most common operation in git-gui). This 
would be disabled when the user sets gc.auto to 0.

This way, we keep a similar experience to the command line in case of 
auto-gc, and we get rid of the prompt. People who don't want 
auto-compression can just set gc.auto to 0, which they should do anyway.

Thoughts?

-- 
Regards,
Pratyush Yadav

Reply via email to