U dołu mojego edytora Emacs 23 zauważam, że Emacs zdaje sobie sprawę z tego, że pracuję w katalogu, który jest pod kontrolą wersji, czym jest ten system kontroli wersji i od jakiego działu aktualnie jestem. Całkiem fajne! Ale mówię, że jestem w gałęzi głównej i z linii poleceń robię git commit
, a następnie git checkout <branch>
. Emacs nadal pokazuje, że jestem w głównej gałęzi. Jak odświeżyć Emacsa tak, aby odzwierciedlał gałąź, w której aktualnie się znajduję, bez zamykania wszystkich moich buforów i restartowania?Jak mogę powiedzieć Emacsowi, że zmieniła się moja gałąź git?
Odpowiedz
M-xrevert-buffer
ale proponuję używać magit-mode
zarządzać repo git w Emacsa.
Dla przypomnienia, używam do związania revert-buffer
do F5:
(global-set-key [f5] 'revert-buffer)
Wielkie dzięki! Key-binding jest idealny na razie, ale później wygląda na to, że 'magit-mode' jest bardziej trwałym rozwiązaniem. – Houdini
@Houdini, aby uniknąć denerwującego potwierdzenia za każdym razem, gdy uderzysz * F5 *. Użyj '(global-set-key [f5] (lambda() (interaktywny) (revert-buffer zero t)))' –
Aby dodać odpowiedź Giordano, jeśli wiele plików, które są pod git, są otwarte. Następnie otwórz ibuffer (M-xibuffer
) oznaczyć bufory chcesz przeładować użyciu m a następnie E następnie (revert-buffer nil t)
.
Bez potrzeby eval - 'V' uruchamia' ibuffer-do-revert'. Oczywiście istnieje wiele sposobów oznaczania buforów en-masse w ibufferze, więc użyj 'C-h m' aby sprawdzić jego funkcje, jeśli nie jesteś tego obeznany. – phils
Ponadto, jeśli miksujesz ibuffer i kontrolę wersji, prawdopodobnie chcesz również sprawdzić [ibuffer-vc] (https://github.com/purcell/ibuffer-vc). – phils
Wielkie dzięki phils. W końcu zaczynam próbować używać mojego systemu kontroli wersji i edytora w połączeniu ze sobą, zamiast skakać z powrotem do wiersza poleceń dla poleceń 'git'. – Houdini
Możesz automatycznie przywrócić bufor, włączając globalny automatyczny tryb przywracania. Jeśli chcesz go włączyć, dodaj następujący kod do pliku konfiguracyjnego.
(global-auto-revert-mode 1)
(setq auto-revert-check-vc-info t)
Jeśli otworzysz zbyt wiele buforów, a Twoja maszyna jest gorąca, powinieneś ustawić "auto-revert-interval" znacznie większy. – ngn999
- 1. Dlaczego git myśli, że każda linia nietkniętego pliku zmieniła się
- 2. Jak mogę powiedzieć kompilatorowi, że moja klasa rozwiązuje metody dynamicznie?
- 3. Jak chronić gałąź GIT (jak master)
- 4. Jak powiedzieć powiedzieć javadoc, że mój okres nie kończy zdanie
- 5. określający gałąź git zdalnego
- 6. Jak mogę powiedzieć, że `ConcurrentDictionary.GetOrAdd` nie dodaje wartości?
- 7. Jak mogę powiedzieć, że mój kod działa w trybie Mono?
- 8. Jak mogę powiedzieć, że narzędzie testowe Perla ignoruje pewne testy?
- 9. Historia Api: Jak powiedzieć przeglądarce, że strona ładuje się?
- 10. Git: Zmień gałąź główną?
- 11. Jak mogę przywrócić gałąź git-svn do SVN HEAD?
- 12. Git: Jak utworzyć nową gałąź ze znacznika?
- 13. Jak mogę powiedzieć, którego vim użyć?
- 14. Jak przenieść gałąź do tyłu w git?
- 15. Jak sklonować konkretną gałąź w git bitbucket
- 16. Jak powiedzieć git, aby ignorował pliki zaczynające się od tyldy?
- 17. Git - przenieś gałąź do mistrza
- 18. Jak scalić tag git na gałąź
- 19. Jak mogę powiedzieć, że moje DataTemplate wiąże się z właściwością w PARENT ViewModel?
- 20. Jak mogę powiedzieć, że kompilacja zakończyła się sukcesem w celu AfterBuild w msbuild?
- 21. Jak powiedzieć Google, że strona została przeniesiona?
- 22. Zdobądź nową gałąź oddziału z git
- 23. Jak usunąć gałąź git w Netbeans?
- 24. Czy mogę powiedzieć, że ggpairs używa skali logowania?
- 25. Git rozgałęzia się ze starszej wersji i cofa bieżącą gałąź.
- 26. Git ciągnie gałąź z innego repozytorium?
- 27. Dlaczego moja historia git wygląda jak choinka?
- 28. Jak mogę przenieść błędnie umieszczoną gałąź TFS?
- 29. Git-Flow cofnąć ukończoną gałąź funkcji
- 30. gałąź git track z inną nazwą
Co stanie się po przeładowaniu pliku? – gcbenison
Czy istnieje polecenie Emacs do ponownego załadowania pliku? – Houdini
'revert-buffer' podobnie jak giordano zasugerował –