Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jgit-dev] [egit-dev] Skip spurious checkouts?

Markus Duft skrev 2012-03-12 14.43:

Out of frustration (again :)), i have created a small-ish (possibly incomplete and pretty untested) "improvement", and wanted to hear how you all feel about this:

i want to skip all the work that is done when checking out a revision (or create a new branch and check it out), if the underlying Rev is the same as the current HEAD rev. Also I'm skipping the refresh of all the projects (it _hurts_ with>600 projects!). Is there something that i don't see and that would prevent me from doing so?

It does work to switch and create branches with this change, but thats all i tested so far - going to run a few tests now... :D

The related changes are [1] and [2].


I think this is too simplistic. We should refresh only those resources that changed, which in your case would be none,
achieving the same effect, but it would also be faster for checkouts that do change some files, but only a few. I
think that is an even more important case than the one you mention here.

At one time our checkout was more stupid than it is now and refreshing was the simple thing to do and with a moderate
amount of projects it's fairly quick.

Since we do have the information for DirCacheCheckout to tell us what changed, we should use that and only refresh
the resources that changed.

-- robin

Back to the top