Za każdym razem, gdy robię plik "hg diff file.ext", używam aplikacji konsoli diff. Czy istnieje sposób, aby to zmienić? Nie mogę znaleźć odniesienia w dokumentacji Mercurial (Nie mówię o scalaniu!). Chciałbym użyć Kdiff3 lub WinMerge (używam Windows).Czy można zmienić domyślne narzędzie porównania w Mercurial?
Odpowiedz
mam rozwiązać ten przy użyciu Mercurial wbudowane rozszerzenia ... Po prostu trzeba dodać następujące wiersze do Mercurial.ini (na Mercurial katalog):
[extensions]
hgext.extdiff=
[extdiff]
cmd.vdiff = kdiff3
Kiedy chcę użyć KDiff3 zamiast diff mam tylko używać:
hg vdiff file.ext
Dzięki tej konfiguracji
[extdiff]
cmd.kdiff3 =
używam tego polecenia, aby zobaczyć diffs:
hg kdiff
Pokazuje to drzewo katalogów ze wszystkimi plikami, które uległy zmianie. Klikasz plik, aby zobaczyć różnice dla samego pliku. Możesz dodać parametr pliku do polecenia, aby zobaczyć tylko jeden plik.
Więcej informacji here.
Właśnie miałem ten problem kilka minut temu; Właśnie zainstalowałem go i dodałem jego ścieżkę (domyślnie jest to c: \ program files \ kdiff3) do mojego systemu PATH e.v. Zrestartowałem moje okno, aby odebrać nową ścieżkę, a "hg kdiff3" właśnie działało. Okazuje się, że w moim bazowym pliku "mercurial.ini" znajduje się plik kdiff3, który działa dla wszystkich repozytoriów hg w systemie.
[extensions]
hgext.extdiff =
[extdiff]
cmd.kdiff3 =
[merge-tools]
kdiff3.args = $base $local $other -o $output
Jeśli szukasz czegoś podobnego git difftool
, gdzie nie trzeba wpisywać nazwy plików i zobaczyć diff dla wszystkich zmienionych plików, dodać je do swojej ~/.hgrc
i uruchom hg difftool
.
[extensions]
extdiff =
[extdiff]
cmd.vimdiff = vimdiff
[alias]
difftool = !for file in $(hg status -n); do hg vimdiff $file; done
- 1. Zmień domyślne SVN diffing narzędzie
- 2. Domyślne uprawnienia, gdy Mercurial tworzy pliki
- 3. Jak zmienić domyślne obrazy CheckBox
- 4. Czy można zmienić ikony Menedżera rysunków Google Maps?
- 5. Jak zmienić domyślne zachowanie polecenia budowania w Visual Studio
- 6. Jak zmienić domyślne ustawienia narodowe w GWT
- 7. jak zmienić domyślne pozycjonowanie modala w bootstrapie?
- 8. Play Framework: Jak zmienić domyślne pakiety gry?
- 9. Czy można zmienić kierunek skali?
- 10. Czy można zmienić funkcję repr w pythonie?
- 11. Czy można zmienić metodę wyszukiwania w LINQ?
- 12. Czy można zmienić ciąg znaków w C?
- 13. Czy można zmienić nazwę pliku w CodeBlocks?
- 14. Czy można zmienić nazwę tabeli w Firebird?
- 15. Czy można zmienić P4TICKET w P4Eclipse?
- 16. Czy można zmienić przekierowanie root WSO2?
- 17. Czy można zastąpić domyślne opcje gniazd w żądaniach?
- 18. Czy można symulować domyślne argumenty szablonów w częściowych specjalizacjach?
- 19. Jak zmienić hasło root'a MySQL na domyślne?
- 20. Jak mogę zmienić domyślne komentarze w wiadomości zatwierdzania git?
- 21. czy można zmienić domyślną skórkę/kolor wideo html5?
- 22. Czy można zmienić wersję Passenger Ruby bez rekompilacji?
- 23. Jak mogę zmienić domyślne ustawienia jQuery Fullcalendar
- 24. Czy Lua ma porównania OR?
- 25. Jak zmienić wartości domyślne kolumny tabeli mysql?
- 26. Czy można wspierać komentarze nieanglojęzyczne podczas używania mercurial z hgsubversion?
- 27. Czy można wprowadzić Mercurial, aby zachować uprawnienia do plików?
- 28. Czy można wykupić pojedynczy katalog z repozytorium Mercurial (HG)?
- 29. Czy scalanie kierunku ma znaczenie w Mercurial?
- 30. W Eclipse, jak zmienić domyślne modyfikatory w szablonie klasy/typu?
Można również przekazać opcje do difftoolu, np. '[extdiff] opts.vdiff = 2>/dev/null' – ACyclic
Ta odpowiedź (i pozostałe poniżej) udostępnia inne narzędzie do porównywania, ale nie zmienia" domyślnego narzędzia różnicowego ". Oznacza to, że nie zmienia to, jakie narzędzie jest używane, gdy wywołujesz 'hg diff' - lub, co ważniejsze, gdy używasz' hg log -p', aby przyjrzeć się całej kolekcji zestawów zmian. Chciałbym znaleźć sposób, aby naprawdę zmienić domyślne? (np. aby móc używać dyferencjału opartego na słowie czasami podczas przeglądania gałęzi). –