Skip to content

very very slow interactive rebases #596

@fommil

Description

@fommil

This appears to be a common problem:

and I've tried everything (that I'm allowed to do... I don't have Administrator access and will never get it). I'm using Windows 7 64 bit and have no control over changing that.

All the fs cache options mean that a git status is relatively fast (maybe a few seconds) on a humongous codebase, but still nothing compared to what I'm used to on GNU/Linux. Anything like an interactive rebase (even to squash two trivial commits) can take as long as a minute.

Looking at the Task Manager, I can see lots and lots of forked git subprocesses. This may be the cause of the performance problems: I understand this is very slow in Windows.

Would it be a major piece of work to redesign the subprocess execution to be in-process? Even if it meant doing everything in serial.

I'm considering alternatives, possibly even contributing to http://www.eclipse.org/jgit/ as an alternative, as it does not require any subprocess forking. I suspect that the performance cost of the JVM startup (and loss of C-level optimisations) is insignificant compared to the process forking overhead on Windows.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions