git diff ...
visar en skillnad men i terminalen.
Jag vill ha ett GUI för visualisering av git diff ...
.
I den mån jag försökte git diff ... | kompare -
. Detta gör tricket men det visade sammanhanget är bara det som finns tillgängligt från .diff, inte fullständigt filinnehåll.
Det skulle nog vara bättre att kunna se hela filinnehållet i diff visualiseraren.
Jag kan kolla in ett Git-arkiv två gånger, exportera två gånger och jämföra med ett GUI-diffverktyg (som Kompare). Men det är besvärligt. Vet du ett bättre sätt att göra det? Äntligen kunde jag prova ett skalskript som gör två kassor och två exporterar till en tillfällig katalog, men det här är inte den bästa möjliga lösningen.
Kommentarer
Svar
Git själv levereras med gitk för att bläddra i förvaret (som inkluderar att visa skillnader mellan saker du redan har begått), gitgui och git difftool [vilket gör att du kan välja ett av sammanslagningsverktygen närvarande i ditt system]. Vad jag personligen använder är Gitcola , vilket jag tycker är ganska bekvämt:
Gitcola (källa: Gitcola ; klicka på bilden för att förstora)
Den hanterar inte bara diff-delen, men också de flesta andra åtgärder du behöver d i ditt dagliga arbetsflöde (begå, tryck, dra, skapa taggar etc.).
För alternativ kan du ta en titt på 6 Användbar grafisk Git-klient för Linux
Observera också att om du inte är nöjd med det inbyggda diff-verktyget kan du alltid konfigurera en extern. En mycket bra kandidat för det skulle vara Meld – som vanligtvis är tillgängligt direkt från standardförvaren för de flesta distributioner:
Meld (källa: Meld )
Observera att ett sådant externt diffverktyg inte behöver veta om Git, eftersom gränssnittet med förvaret täcks av Git Cola och diff-verktyget måste bara, väl, visualisera skillnaden som ges till den av Git Cola.
Kommentarer
- Jag tror att
gitk
bara visar en grafisk representation av grenarna, och även om det ' är mycket användbart är diffs det visar ser ungefär samma ut som på kommandoraden. Saknar jag något? - @MichaelScheper färgerna? Eller det faktum att
gitk
bara var klipphängare, och mitt svar rekommenderar snarare Gi tcola? 🙂 - Hee! ☺ Jag ser färger när jag gör
git diff
på kommandoraden, så Gitcola erbjuder inte ' verkligen en fördel för mig. Men kanske inte alla ' s terminal tillåter färg, särskilt Windows-användare, så ja, jag förstår, det är ett steg framåt. Men jag antar att jag förstod ' en grafisk framställning ' för att betyda den typ av sida vid sida, olika längd som kan rullas ut som SmartGit, i @Tom ' s svar, såväl som olika IDE: er. Men tack för förtydligandet och spänningen i klipphängaren. 😉 - Wll, om du inte ' inte gillar det inbyggda diff-verktyget @MichaelScheper – kan du alltid konfigurera en extern som t.ex. Meld . Det behöver inte ' känna till git då Git Cola själv tar hand för det ändamålet, det behöver helt enkelt visualisera skillnaden. Antar att
meld
passar perfekt för dina önskemål, se t.ex. den här skärmdumpen . Där uppdaterade jag mitt svar. Lyckligare? 🙂 - Japp, att ' är den jag hoppades på. TBH, jag använder normalt kommandoraden och vimdiff, men för mer komplicerade ändringar gör verktyg som Meld och SmartGit livet enklare. Tack!
Svar
Jag skulle kolla in SmartGit, det borde göra allt du vill. Det finns inte bara på Linux utan även Windows och Mac. Det är ganska enkelt att använda och är gratis för icke-kommersiella projekt.
SmartGit (gratis *)
SmartGit är en front-end för det distribuerade versionskontrollsystemet Git och körs på Windows, Mac OS X och Linux. SmartGit är avsett för utvecklare som föredrar ett grafiskt användargränssnitt framför en kommandoradsklient, för att vara ännu mer produktiva med Git – den mest kraftfulla DVCS idag.
* För icke-kommersiellt arbete
Svar
Nytt svar på en gammal fråga men jag tvingas. Ett annat utmärkt alternativ är GitLens
Igår befann jag mig att lämna en annan IDE ”s VCS och installera vscodium för att använda GitLens istället. Det sätt som det kontextuellt flyttar till filen du har öppnat i redigeraren och presenterar en djup engagemangshistoria är ren strålande bekvämlighet.
git difftool --help
och se listan som stöds