On macOS Emacs currently creates child processes using
appears that this also copies GUI resources. The result is that
forking takes about 30 times as long on Darwin than on Linux. And
because Magit starts many
git processes even when doing simple things,
that makes quite a difference.
master branch Emacs now uses
vfork when possible, like this was
already done on Linux, and now child creation only takes about twice
as long on Darwin. See 2 for more information.
Nobody knows when the changes on the
master branch will be released as
26.1, but it is still a long way off. You might want to get your
hands on this change before then. The easiest way to get a patched
Emacs is to install the
emacs-plus formula 3 using
The change has been backported, so you get it not only when using
--HEAD, but also when using
--devel or when installing the latest
release (by not using a version argument).
Alternatively you can apply the backport 4 manually.