Jestem zmuszony używać Windows 10 do projektu. Tak, wolę używać GNU / Linux. Aby zachować zdrowie psychiczne, starałem się traktować Windows jako program ładujący Emacsa :)
Niestety, Magit (jedna z moich ulubionych części Emacsa, która również rekompensuje brak dobrego wiersza poleceń w systemie Windows) jest nieznośnie powolny. Mam dysk SSD, 16 GB pamięci RAM i czterordzeniowy i7, ale wykonanie go w małym repozytorium zajmuje osiem sekundmagit-status
. Następnie, gdy chcę wprowadzić kolejną zmianę, zajmuje to około 5 sekund na plik .
Oto, co próbowałem:
$ git config --global core.preloadindex true
$ git config --global core.fscache true
$ git config --global gc.auto 256
- Dodanie całego projektu do listy wykluczeń Windows Defender (mój jedyny AV)
- Ustawienie
magit-git-executable
zwykłego msysgit, który pobrałem ( https://git-for-windows.github.io/ ). Sprawdziłem igit status
tutaj zajmuje <1 sekundę. Wiem, żemagit-status
to znacznie więcej, ale to za dużo.
Czy ktoś może zasugerować, jak to zrobić szybciej? Nie mogę sobie wyobrazić nikogo używającego Magit w systemie Windows w ten sposób.
Zasugerowano, że to pytanie jest duplikatem, ale zadali:
Próbuję zrozumieć, dlaczego Emacs ma zauważalnie krótszy czas uruchamiania na Ubuntu niż Windows. Czy ktoś zna odpowiedź?
Znam przynajmniej kilka powodów, dla których Emacs, Git i Magit działają wolniej w systemie Windows. Pytam, w jaki sposób zoptymalizować Magit, aby wykonać mniej czynności, buforować wyniki lub coś podobnego, nawet jeśli odbywa się to kosztem funkcjonalności.
git
poleceń z wiersza poleceń?
magit-git-executable
będzie prawdopodobnie nieco szybszy (te wewnątrz cmd
i bin
faktycznie są opakowaniami, jeśli executable-find
zwróci jeden z nich magit spróbuje ustawić magit-git-executable
się na „prawdziwego” gita). 8 sekund na małe repozytorium wydaje się, że coś innego jest nie tak, zajmuje ~ 0,8 s dla repozytorium magit tutaj (Windows 8).
magit-refresh-verbose
na t
.
git-status
zajmuje <1 sekundę? Powinno to być zasadniczo natychmiastowe. Czy w ogóle jest jakieś zauważalne opóźnienie?