git diff ...
pokazuje różnicę, ale w terminalu.
Chcę GUI do wizualizacji git diff ...
.
O ile próbowałem git diff ... | kompare -
. To załatwia sprawę, ale pokazany kontekst to tylko to, co jest dostępne z pliku .diff, a nie pełna zawartość pliku.
Prawdopodobnie lepiej byłoby móc zobaczyć pełną zawartość pliku w wizualizatorze różnic.
Mogę dwukrotnie sprawdzić repozytorium Git, dwukrotnie wyeksportować i porównać z narzędziem porównywania GUI (takim jak Kompare). Ale to jest uciążliwe. Czy znasz lepszy sposób na zrobienie tego? W końcu mogłem wypróbować skrypt powłoki, który wykonuje dwa pobrania i dwa eksportuje do katalogu tymczasowego, ale nie jest to najlepsze możliwe rozwiązanie.
Komentarze
Odpowiedź
Git sam jest dostarczany z gitk , aby przeglądać repozytorium (które obejmuje wyświetlanie różnic rzeczy, które już zatwierdziłeś), gitgui i git difftool [co pozwala wybrać jedno z narzędzi do scalania obecny w Twoim systemie]. Osobiście używam Gitcola , co wydaje mi się całkiem wygodne:
Gitcola (źródło: Gitcola ; kliknij, aby powiększyć)
Obsługuje nie tylko część diff, ale także większość innych czynności, których potrzebujesz d w codziennym przepływie pracy (zatwierdzanie, wypychanie, ściąganie, tworzenie tagów itp.).
Alternatywne rozwiązania można znaleźć w 6 Przydatny graficzny klient Git dla Linuksa
Zauważ również, że jeśli nie jesteś zadowolony z wbudowanego narzędzia porównywania, zawsze możesz skonfigurować zewnętrzne. Bardzo dobrym kandydatem byłoby Meld – który zazwyczaj jest dostępny bezpośrednio ze standardowych repozytoriów w większości dystrybucji:
Meld (źródło: Meld )
Zauważ, że takie zewnętrzne narzędzie porównujące nie musi wiedzieć o Git, ponieważ łączenie się z repozytorium jest objęte Git Cola i narzędzie porównywania muszą tylko, cóż, zwizualizować różnicę przekazaną mu przez Git Cola.
Komentarze
- Uważam, że
gitk
pokazuje tylko graficzną reprezentację drzew gałęzi i chociaż ' jest bardzo przydatne, wyświetlane różnice wyglądają prawie tak samo jak w wierszu poleceń. Czy czegoś mi brakuje? - @MichaelScheper kolory? Albo fakt, że
gitk
był tylko klif-wieszak, a moja odpowiedź raczej poleca Gi tcola? 🙂 - Hej! ☺ Widzę kolory, gdy wykonuję
git diff
w wierszu poleceń, więc Gitcola nie ' nie daje mi żadnych korzyści. Ale może nie każdy terminal ' zezwala na kolor, zwłaszcza użytkownicy systemu Windows, więc tak, widzę, to krok naprzód. Ale przypuszczam, że rozumiem ' graficzne przedstawienie ' jako rodzaj wyświetlanego obok siebie, o różnej długości, przewijanego wyniku, SmartGit, w odpowiedzi @Tom ', zapewnia, a także różne IDE. Ale dzięki za wyjaśnienie i emocje związane z wieszakiem na klify. 😉 - Wll, jeśli nie ' nie przypomina wbudowanego narzędzia porównywania @MichaelScheper – zawsze możesz skonfigurować zewnętrzne, takie jak np. Połącz . To nie ' nie musi wtedy znać gita, ponieważ sam Git Cola dba o to, po prostu musi wizualizować różnicę. Zgadnij, że
meld
idealnie pasuje do twoich życzeń, patrz np. ten zrzut ekranu . Tam zaktualizowałem moją odpowiedź. Szczęśliwszy? 🙂 - Tak, to ' to ten, na który liczyłem. TBH, zwykle używam wiersza poleceń i vimdiff, ale w przypadku bardziej skomplikowanych zmian narzędzia takie jak Meld i SmartGit ułatwiają życie. Dzięki!
Odpowiedź
Chciałbym wypróbować SmartGit, powinien zrobić wszystko, co chcesz. Jest dostępny nie tylko na Linuksie, ale także na Windowsie i Macach. Jest dość łatwy w użyciu i darmowy dla projektów niekomercyjnych.
SmartGit (bezpłatny *)
SmartGit to front-end dla rozproszonego systemu kontroli wersji Git i działa w systemach Windows, Mac OS X i Linux. SmartGit jest przeznaczony dla programistów, którzy wolą graficzny interfejs użytkownika od klienta wiersza poleceń, aby być jeszcze bardziej produktywnym z Git – najpotężniejszym obecnie DVCS.
* Do prac niekomercyjnych
Odpowiedź
Nowa odpowiedź na stare pytanie, ale jestem zmuszony. Inną doskonałą opcją jest GitLens
Wczoraj opuściłem inne IDE s VCS i zainstalowanie vscodium, aby zamiast tego używać GitLens. Sposób, w jaki kontekstowo przenosi się do pliku, który „otworzyłeś w edytorze i przedstawia szczegółową historię zatwierdzeń”, jest genialną wygodą.
git difftool --help
i zobacz obsługiwaną listę