Bir proje için Windows 10'u kullanmak zorundayım. Evet, GNU / Linux kullanmayı tercih ederim. Aklımı korumak için Windows'u Emacs için bir önyükleyici olarak görmeye çalıştım :)
Ne yazık ki, Magit (Emacs'ın en sevdiğim parçalarından biri, aynı zamanda Windows'ta iyi bir komut satırı eksikliğini de telafi ediyor) dayanılmaz derecede yavaş. Bir SSD, 16 GB RAM ve dört çekirdekli i7'm var, ancak küçük bir depoda yürütmek sekiz saniye sürüyor magit-status
. Sonra, başka bir değişiklik yapmak istediğimde, dosya başına yaklaşık 5 saniye sürer .
İşte denedim:
$ git config --global core.preloadindex true
$ git config --global core.fscache true
$ git config --global gc.auto 256
- Tüm projeyi Windows Defender (benim tek AV) hariç tutma listesine ekleme
- Ayar
magit-git-executable
Ben indirilen düzenli msysgit biri (için https://git-for-windows.github.io/ ). Kontrol ettim vegit status
burada <1 saniye sürüyor. Bununmagit-status
daha fazlasını yaptığını biliyorum , ama bu çok fazla.
Herkes bunu daha hızlı hale getirmenin yollarını önerebilir mi? Windows'ta Magit'i böyle kullanan birisini hayal edemiyorum.
Bu sorunun yinelenmesi önerildi , ancak sordular:
Emacs'ın neden Ubuntu'da Windows'tan fark edilir derecede daha kısa bir başlangıç süresine sahip olduğunu anlamak için uğraşıyorum. Cevabı bilen var mı?
Emacs, Git ve Magit'in Windows'ta daha yavaş olmasının en azından bazı nedenlerini biliyorum. Magit'i işlevsellik pahasına olsa bile daha az şey veya önbellek sonuçları veya bir şey yapmak için nasıl optimize edeceğimi soruyorum .
git
Komut satırından eşdeğer komutları çalıştırırken aynı sorunlarınız mı var ?
magit-git-executable
muhtemelen biraz daha hızlı olacağını düşünüyorum (olanlar cmd
ve bin
aslında sarmalayıcılar, eğer executable-find
bunlardan biri magit magit-git-executable
"gerçek" git ayarlamaya çalışacağız ). Küçük bir depo için 8 saniye başka bir şey yanlış gibi geliyor, ancak magit repo için ~ 0.8 saniye sürer (Windows 8).
magit-refresh-verbose
için t
.
git-status
<1 saniye sürer? Aslında anlık olmalı. Hiç algılanabilir bir gecikme var mı?