Today, I was exploring source code of the Gitlab project and experienced poor performance of the
git status command. Gitlab is an open source alternative to Github.
Below is the output of
git status command
time git status
On branch master Your branch is ahead of 'origin/master' by 1 commit. (use "git push" to publish your local commits) nothing to commit, working tree clean git status 0.20s user 1.13s system 88% cpu 1.502 total
total here is the number of seconds it took for the command to complete.
The same was the case for the
git add command.
time git add .
git add . 0.21s user 1.11s system 115% cpu 1.146 total
So both commands took more than a second to finish.
Continue reading “Improve Git Monorepo Performance”
These commands are slow because they need to search the entire worktree looking for changes. When the worktree is very large, Git needs to do a lot of work.