Rebase Interactive: parallelize using multi-threading.

daniel neuss 1 year ago updated by Anton 11 months ago 3

I am working on a rather large PR (refactoring entire code base for code style) – I started out with upwards of 800 commits. In order to properly squash them down to ~50 thematically sorted commits, I had to rebase interactively numerous times. I had to change my workflow substantially once I noticed that each of these operations required upwards of five minutes. The reason became apparent when I checked the load on the CPU: the git process was using only one process. Now I don't know if this is even within Syntevo's hand to change, but I love your client (it also didn't let me down with this very complex pull-request) and trust that you would do what you can to make it better :)

Keep up the good work!

syntevo feature request multi-threading.png

It might be slow not because of many commits but many files touched ... hard for me to tell exactly.


We are using the commands offered by the Git executable. We are not going to implement this command on our own.

I recommend to send bug report to Git: https://github.com/git/git

They receive it using mailing list: git@vger.kernel.org

Multithreading today is necessity due to new processors with many cores and constantly increasing workload.
Today we cannot allow intensive CPU-related work to use only 1 worker thread when we have 32 available (for example).