git diff ...
toont een verschil maar in de terminal.
Ik wil een GUI voor visualisatie van git diff ...
.
Voor zover ik git diff ... | kompare -
heb geprobeerd. Dit volstaat, maar de getoonde context is alleen wat beschikbaar is via de .diff, niet de volledige bestandsinhoud.
Het is waarschijnlijk beter om de volledige bestandsinhoud in de diff-visualizer te zien.
Ik kan een Git-repository twee keer uitchecken, twee keer exporteren en vergelijken met een GUI-diff-tool (zoals Kompare). Maar het is omslachtig. Kent u een betere manier om het te doen? Eindelijk zou ik een shell-script kunnen proberen dat twee keer uitcheckt en twee keer naar een tijdelijke map exporteert, maar dit is niet de best mogelijke oplossing.
Reacties
Answer
Git zelf wordt geleverd met gitk om door de repository te bladeren (inclusief het tonen van diffs van dingen die je “al hebt vastgelegd), gitgui en git difftool [waarmee je een van de samenvoeggereedschappen kunt kiezen aanwezig in uw systeem]. Wat ik persoonlijk gebruik is Gitcola , wat ik best handig vind:
Gitcola (bron: Gitcola ; klik op afbeelding om te vergroten)
Het behandelt niet alleen het diff gedeelte, maar ook de meeste andere acties die je nodig hebt d in uw dagelijkse workflow (vastleggen, pushen, trekken, tags maken, etc.).
Voor alternatieven kunt u 6 bekijken. Handige grafische Git Client voor Linux
Merk ook op dat als je niet tevreden bent met de ingebouwde diff-tool, je altijd een externe kunt configureren. Een zeer goede kandidaat daarvoor is Meld – die gewoonlijk direct beschikbaar is vanuit de standaard repositories op de meeste distributies:
Meld (bron: Meld )
Merk op dat een dergelijke externe diff-tool” niets over Git hoeft te weten, aangezien de koppeling met de repository wordt gedekt door Git Cola en de diff-tool hoeven alleen maar de diff te visualiseren die het door Git Cola heeft gekregen.
Opmerkingen
- Ik denk dat
gitk
alleen een grafische weergave toont van de vertakte bomen, en hoewel dat ' erg handig is, is de diffs het toont er ongeveer hetzelfde uit als op de opdrachtregel. Mis ik iets? - @MichaelScheper de kleuren? Of het feit dat
gitk
slechts de cliff-hanger, en mijn antwoord beveelt eerder Gi aan tcola? 🙂 - Hee! ☺ Ik zie kleuren als ik
git diff
op de opdrachtregel doe, dus Gitcola biedt ' niet echt een voordeel voor mij. Maar misschien staat niet iedereen ' s terminal kleur toe, vooral Windows-gebruikers, dus ja, ik begrijp dat het is een stap voorwaarts is. Maar ik veronderstel dat ik ' een grafische weergave ' begreep als het soort naast elkaar, met verschillende lengte scrollbare uitvoer die SmartGit, in het antwoord van @Tom ', biedt, evenals verschillende IDEs. Maar bedankt voor de opheldering en de spanning van de klifhanger. 😉 - Wll, als je de ingebouwde diff-tool @MichaelScheper ' niet leuk vindt, kun je altijd een externe zoals bijv. Meld . Dat hoeft niet ' git dan te kennen, aangezien Git Cola zelf voor dat doel zorgt, hoeft het alleen de diff te visualiseren. Denk dat
meld
perfect zou passen bij uw wensen, zie bijv. dit screenshot . Daar heb ik mijn antwoord bijgewerkt. Gelukkiger? 🙂 - Ja, dat ' is degene waar ik op hoopte. TBH, ik gebruik normaal gesproken de opdrachtregel en vimdiff, maar voor meer gecompliceerde wijzigingen maken tools zoals Meld en SmartGit het leven gemakkelijker. Bedankt!
Answer
Ik zou SmartGit eens proberen, het zou alles moeten doen wat je wilt. Het is niet alleen beschikbaar op Linux, maar ook op Windows en Macs. Het is vrij eenvoudig te gebruiken en is gratis voor niet-commerciële projecten.
SmartGit (gratis *)
SmartGit is een front-end voor het gedistribueerde versiebeheersysteem Git en draait op Windows, Mac OS X en Linux. SmartGit is bedoeld voor ontwikkelaars die de voorkeur geven aan een grafische gebruikersinterface boven een opdrachtregelclient, om nog productiever te zijn met Git – de krachtigste DVCS van dit moment.
* Voor niet-commercieel werk
Antwoord
Nieuw antwoord op een oude vraag maar ik ben gedwongen. Een andere uitstekende optie is GitLens
Gisteren merkte ik dat ik een andere IDE verliet “s VCS en vscodium installeren om in plaats daarvan GitLens te gebruiken. De manier waarop het contextueel naar het bestand wordt verplaatst dat je in de editor hebt geopend, en een diepe commit-geschiedenis presenteert, is puur briljant gemak.
git difftool --help
uit en bekijk de ondersteunde lijst