Re: [PATCH 1/2] git-commit: Disallow unchanged tree in non-merge mode

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

 



On Thu, Sep 13, 2007 at 06:54:02PM -0700, Linus Torvalds wrote:

> It would be interesting to hear what the situation is that makes 
> run_status be too expensive. Doing a "git status" on the kernel tree 
> currently takes something like 0.3 seconds for me when the directory and 
> stat information cached - and while it's obviously going to be a *lot* 
> slower if there's IO involved, that IO is basically required for doing the 
> up-to-date check anyway.
> 
> So maybe somebody already described the situation that was slow already, 
> but if so, can we get a repeat of that description?

I ran into a painfully slow "runstatus" a few weeks ago that made
committing more difficult, though you may consider the repo to be
pathological. The packfile is about 1.1G, split over about 850 files
(it's photos and short movies).

I did a large amount of moving of existing files, along with some edits
of exif tags (changing a few hundred bytes at most at the beginning of
each 1M-ish file). Running git-runstatus chugged for a few minutes, and
I don't think I ever actually finished a run. I assumed the rename
detection was at fault (when I show that commit diff, I also get a huge
slowdown). So the problem isn't get being stupidly slow, it's just that
I have a pathological repo (and a pathological set of changes) where the
cost of showing the commit template isn't worth it.

I think Dmitry's approach of adding a "don't show the template" option
to git-commit is the right way of handling this. Changing the behavior
all the time would affect non-pathological cases. I suppose you could
let git-runstatus chug for a few seconds, and then if it hasn't finished
kill it and show a less intensive status summary; that just seems
hack-ish and wrong to me, though.

-Peff
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux