Was ist ein guter anfängerfreundlicher grafischer Git-Client für Windows?

Persönlich würde ich einfach Cygwin installieren und mit den üblichen *nix-Shell-Tools fortfahren, aber ich muss einigen Kunden, die etwas Anfängerfreundlicheres benötigen, eine Softwareempfehlung geben.

Die Situation ist, dass mehrere Clients Website(s) der meist statischen HTML-Art entwickelt haben, aber der Server, auf dem sie bereitstellen müssen, nicht über die übliche Sammlung von Protokollen aus den 1990er Jahren verfügt (z. B. kein FTP ). Tatsächlich gibt es keinen Zugriff auf eine grafische Oberfläche. Die Bereitstellung erfolgt über Git. Änderungen müssen an ein Remote-Repository übertragen werden, auf das nur über die SSH-Schlüsselanmeldung zugegriffen werden kann. Alle Commits an den Master-Branch, die vom autorisierten Schlüssel gepusht werden, lösen ein Hook-Skript aus, das die Site auf den Produktionsservern bereitstellt.

Ich möchte einen Git -Client für Windows vorschlagen, der:

  • macht es relativ einfach einzurichten und zu initialisieren…
    • …ein oder mehrere lokale Repositories.
    • …eine einzelne git+ssh-Fernbedienung.
    • …Authentifizierung mit einem RSA - Schlüsselpaar (das Generieren wäre ein Bonus).
  • verfügt über eine einfache Benutzeroberfläche, in der ein grundlegender Arbeitsablauf zum Festschreiben und Pushen einfach zu bewerkstelligen ist, ohne die Feinheiten der verteilten Versionskontrolle zu verstehen.

Für jeden Kunden steht eine GitLab -Instanz zur Verfügung, die ein Projekt pro Domain hat und das Hinzufügen ihres öffentlichen Schlüssels ziemlich einfach macht. Es gibt auch die Klon-/Remote-URLs für jedes Projekt an und macht es ziemlich einfach, den Status des Remote-Repositorys zu überprüfen.

Open Source wäre bevorzugt, aber jede seriöse Freeware wäre akzeptabel. Auf welche Client-Software soll ich sie verweisen?

Bearbeiten: Die meisten Vorschläge scheinen sich bisher auf vollständige Frontends für alle Funktionen von Git zu konzentrieren. Ich suche nach etwas abgespeckterem, das nur die Grundlagen abdeckt und besser für eine bestimmte Aufgabe geeignet ist, als mit den großen Hunden zu laufen. Ich denke hier an das KISS-Prinzip für Leute, die die Versionskontrolle für nichts anderes verwenden und nur ihre Websites "hochladen" möchten .

Bitte beachten Sie, dass ich eine ähnliche Frage für OSX gestellt habe, aber ich möchte speziell Tools, die vertraut und einfach sind, um den Dreh raus zu bekommen. Cross-Plattform wäre in Ordnung, aber ich habe und denke, dass die beste Newbie-Lösung für Newbies etwas natives für jede Plattform sein wird, also denken Sie bitte daran, wenn Sie antworten.
Ich bin mir nicht sicher, ob dies für eine Antwort ausreichend ist: Ich habe PortableGit bisher nur unter Windows verwendet. Es war meine erste Verwendung von Git (ich "migrierte" von SVN) und es funktionierte sehr gut: ein Kinderspiel zu installieren. Vollständige Informationen zur Suite von Git für Windows . FWIW.
Ich würde wirklich gerne die Ups und Downvotes sehen :D
@ManuelSchneid3r +74/-0 zum Zeitpunkt dieses Beitrags. Antworten sind +58/-2, +48/-3, +34/-0, +12/-0, +8/-1, +2/-0, sortiert nach Stimmen.
Ich bin gerade dieser SO-Site beigetreten, daher kann ich noch nicht antworten, aber hier ist ein ziemlich neues Angebot von Axosoft: gitkraken.com Es scheint eine dieser modernen, von Node erstellten Apps zu sein und unterstützt noch keine Submodule, aber bisher es sprengt die Türen von SourceTree, weil es leistungsstarke Funktionen auf einfache Weise anbietet.
Ich bin auch gerade dieser SO-Site beigetreten, ich könnte hinzufügen, dass für alle Leute, die IDEs mögen, Visual Studio 2015 (sogar die kostenlose Edition) eine großartige Unterstützung für Git bietet. Es ist einfach, hinzugefügte/bearbeitete/entfernte Dateien zu verwalten; integriertes Merge-Tool; einfache Einrichtung. Es unterstützt kein SSH, ist aber ansonsten eines der besten Tools für Git unter Windows.

Antworten (11)

Für Anfänger gibt es nichts Besseres als TortoiseGit .

  • Es lässt sich in Windows Explorer integrieren (keine neue Benutzeroberfläche zu lernen)
  • Open-Source (GPL)
  • Neues lokales Repo einrichten/initialisieren:

Neues lokales Repo einrichten/initialisieren

  • Grundlegende Funktionen befinden sich oben im Kontextmenü (Sync, Commit, Push und Pull):

SchildkröteGit

Dies ist sehr zu empfehlen.
@Jbaruch bitte lesen Sie diesen Meta-Beitrag und bearbeiten Sie Ihre Antwort entsprechend.
@Olli, ich finde meine Antwort ziemlich genau im Einklang mit den Anweisungen in diesem Beitrag. Ich erkläre ausdrücklich, warum dieses Produkt der Anfrage entspricht, hebe die relevanten Eigenschaften hervor und drücke meine Meinung dazu aus. Was fehlt?
@Jbaruch wie einfach ist es, ein neues lokales Repository zu initialisieren? Eine einzelne git+ssh-Fernbedienung? Authentifizierung? Ist es Open-Source? In der Frage sind bestimmte Anforderungen festgelegt, die Sie nicht ansprechen.
@Olli, lass es uns zu meta bringen , ich habe einige Gedanken darüber, wie diese Seite funktioniert.
@Olli hat einiges hinzugefügt.
Ich glaube immer noch nicht, dass es sich als qualitativ hochwertige Antwort qualifiziert. Es beginnt jedoch, die grundlegendsten Anforderungen zu erfüllen. Weitere Zitate aus diesem verlinkten Meta-Beitrag: „Sie sollten auch über alle möglichen Macken sprechen, die Ihnen einfallen, und sogar über Dinge, die Sie als Nachteile des Produkts empfunden haben. Kurz gesagt, teilen Sie Ihre Erfahrungen mit etwas, nicht nur mit Ihren Wissen, dass es existiert."
Jetzt geht das schon wieder los. Ich benutze dieses Tool ATM nicht. Mir sind also keine Macken, Probleme, Nachteile etc. bekannt. Ich habe keine einschlägigen Erfahrungen damit. Soll ich meine Antwort jetzt löschen (gute Antwort, gut erklärt, liefert wertvolle und relevante Informationen)? N.P., wirklich. Wenn Sie nur nicht weniger als perfekt erwarten, lassen Sie mich aus. Ich ziehe das vorhandene Gute der nicht vorhandenen Perfektion vor.
Wenn Sie keine einschlägigen Erfahrungen damit haben, sollten Sie es vielleicht nicht empfehlen ? Meiner Meinung nach sollten Sie diese Antwort entweder verbessern oder löschen und stattdessen einen Kommentar zur Frage hinzufügen.
Die einzig relevante und gute Antwort löschen?! Das ist ein erstaunlicher Tipp. Diese Seite geht mit dieser Einstellung voran, das ist sicher.
TortoiseGit ist ungefähr so ​​einfach wie Git. Wenn jemand anderes es für Sie einrichtet, müssen Sie zum Festschreiben der Änderungen nur mit der rechten Maustaste auf die Datei (oder den Ordner) im Explorer klicken und „Git Commit“ auswählen.
Ich würde die Tortoise-Werkzeuge keinem Anfänger empfehlen, weil sie zu einfach sind. Es gibt keine GUI, die ihnen sagt, was los ist. Ich denke, dieses Tool ist eher für fortgeschrittene Benutzer gedacht, die wissen, was sie erwartet, wenn sie einen Git-Befehl ausgeben.
Ich habe es versucht, nachdem ich diese Empfehlung gelesen hatte, aber ich persönlich fand es zu frustrierend, es in 5 Minuten zu lernen, also habe ich SourceTree heruntergeladen und fand es viel einfacher zu bedienen ... hauptsächlich, weil es eine Schnittstelle gibt. Ich stimme dem Kommentar von TT zu
„Es lässt sich in den Windows Explorer integrieren“ Yucks, yucks, yucks. Gibt es eine eigenständige portable Version?
Während TortoiseGit ein mächtiges Werkzeug ist und die Shell-Integration nett ist, wird es keine Auszeichnungen für Benutzerfreundlichkeit gewinnen. Es ist nicht so, dass Sie eine optimierte Oberfläche für die meisten Git-Befehle haben, es gibt verschiedene Fenster und Tools für alles und einige sind für Sadisten gemacht, da bin ich mir sicher. Meiner Meinung nach erfüllt es nicht die Kriterien für einen "guten neulingsfreundlichen grafischen Git-Client für Windows", wie es das OP verlangt ...
Ich persönlich ziehe es vor, Tortoise GIT nicht zu verwenden. Während Tortoise SVN ein wunderbares SVN-Tool ist, leiht sich Tortoise GIT ein wenig zu viel von Tortoise SVN und behält eine Menge SVN-Terminologie und Arbeitsabläufe bei. Es ist irgendwie schwierig oder unklar, Dinge "auf die GIT-Weise" zu tun. Zum Beispiel würde man nie wissen, was "Synchronisieren" in Tortoise GIT bedeutet - weil es keinen solchen nativen Befehl gibt. Auf der anderen Seite, wenn es keine Rolle spielt, Dinge "auf die GIT-Weise" zu tun, und die meisten Entwickler aus dem SVN-Bereich kommen, sich aber aus irgendeinem Grund entschieden haben, GIT zu verwenden. Tortoise GIT funktioniert.
Nachdem ich TortoiseHg jahrelang verwendet habe, dachte ich, TortoiseGit würde eine ähnliche Erfahrung bieten. Falsch. Während Sie unter "Hg Workbench" über eine einzige einheitliche Benutzeroberfläche im Grunde alles für Mercurial tun können, ist TortoiseGit völlig fragmentiert. Es gibt kein "zentrales Fenster", nur viele unzusammenhängende Panels, die sich unvollständig, inkonsistent und verwirrend anfühlen. Einfach ausgedrückt, Sie müssen Git-Befehle bereits kennen, bevor Sie TortoiseGit verwenden können, während Sie TortoiseHG jahrelang verwenden können, ohne die Befehlszeile zu berühren. Aus diesem Grund halte ich TortoiseGit für ein schlechtes Tool.
@RogerSanders - Das ist ein großartiges Feedback. Ich befinde mich in einer ähnlichen Situation - habe TortoiseHg lange Zeit ziemlich produktiv verwendet, bin aber immer noch ein absoluter Noob in Bezug auf rohes Mercurial oder die Befehlszeilen-Versionskontrolle im Allgemeinen. Ich kann akzeptieren, dass Git „gewonnen“ hat (siehe zum Beispiel Bitbucket) und suche daher nach dem Git-Äquivalent von TortoiseHg. Es ist enttäuschend, dass TortoiseGit nicht den „Tortoise Franchise“-Standards entspricht.

Ich bin von Github für Windows und dann von Git Extensions zu SmartGit gewechselt und kann es empfehlen. Hier ist der Grund-

  1. Plattformübergreifend (in Java erstellt)
  2. Sehr einfach einzurichten und zu verwenden. Wenn Sie bereits Erfahrung mit Git-Clients haben, werden Sie keine Minute brauchen, um ins Geschäft zu kommen.
  3. tragbar
  4. Einfache saubere Benutzeroberfläche. Die Hauptschnittstelle zeigt nur die geänderten Dateien und die großen Commit-, Merge-, Push- und Pull-Buttons.

    SmartGit

Kommerzielle Software, aber kostenlos für den privaten Gebrauch.

Für Git-Anfänger oder Nicht-Git-Benutzer besteht die einzige Schwierigkeit darin , die SSH-Schlüssel einzurichten . Sobald Sie das getan und Ihr erstes Repository geklont haben, ist es einfach und Sie müssen die Konsole nie mehr öffnen.

Diese Frage ist sehr speziell für Leute gedacht, die keine Erfahrung mit Git (oder VCS) haben und auch nicht vorhaben, welche zu haben. Können Sie kommentieren, wie dies für diesen Anwendungsfall funktionieren würde? Es klingt fast so, als ob etwas früher in Ihrer Kette besser sein könnte. Was sind „Git-Erweiterungen“?
@Caleb Ich habe die Antwort bearbeitet. Git-Erweiterungen können aufgrund der integrierten Plugins für viele Dienste zunächst einfach eingerichtet werden, aber für den letzteren Teil "Verwaltung des Repositorys" bevorzuge ich SmartGit, weil es einfacher ist. + es ist tragbar
Ich habe SmartGit als meinen ersten Git-Client verwendet und es ist mit nur einer leichten Lernkurve einfach zu bedienen. Ich würde es jedem empfehlen.
SmartGit ist wirklich gut, sowohl für Neulinge als auch für erfahrene Benutzer. Sie können ein gutes visuelles Gefühl dafür bekommen, was vor sich geht, und die meisten alltäglichen Aufgaben vereinfachen.
Ich habe SmartGit auch als meine erste Git-GUI verwendet, als ich absolut kein Verständnis von Git hatte und es trotzdem geschafft habe, es zu verwenden. Davon abgesehen sehe ich mich eher als Power-User.
Das einzige Problem, es unterstützt BitBucket nur per SSH. Ich wünschte, es könnte BitBucket über HTTPS unterstützen. Irgendein anderer portabler Client?
@Drazick Sie haben kürzlich Unterstützung für den HTTPS-Transport hinzugefügt :)
@RamRachum, in welcher Version?
Ich bin mir nicht sicher, möglicherweise 6 oder 6,5. Ihr Änderungsprotokoll ist unvollständig.
Diese Software enthält Viren, die von virutstotal virustotal.com/en/file/… entdeckt wurden.
Es ist nicht kostenlos, es ist eine Testversion
aber Java. Nein nein Nein.
Java? Ist das ein Witz? Schreiben Sie einmal überall verwüsten!
Ich bin sehr einverstanden. SmartGit ist wahrscheinlich der beste Client für einfache Versionskontrolle, den es gibt. Es hat so ziemlich jede Funktionalität, die Sie sich jemals in einer GUI wünschen könnten, ist aber immer noch ziemlich einfach zu bedienen, wenn Sie keine der erweiterten Funktionen benötigen. Außerdem ist Java-Software großartig, solange Sie nicht derjenige sind, der sie schreibt. Abgesehen von diesem Swing-Geschäft. Es ist einfach so hässlich.

Ich verwende Atlassian SourceTree und mag es sehr.

Hier ist die Übung:

  • Kostenlos (kein Open-Source-Gedanke AFAIK)
  • Funktionsreich - Fast alle Funktionen von Git sind vorhanden (allerdings nicht von GitHub, z. B. habe ich keine Möglichkeit gefunden, einen GitHub-Fork umzubasieren. Es ist mit gewöhnlichen Git-Befehlen möglich - Hinzufügen von Remote usw., aber nicht sofort einsatzbereit)
  • Unterstützt GitFlow
  • Schöne Benutzeroberfläche:

    Bildschirmfoto

HINWEIS - Dieser Screenshot stammt von einer viel älteren Version. Die Benutzeroberfläche der neueren Version ist einfacher.

Fazit - ich finde es fast perfekt und benutze es für alle Bedürfnisse, die nicht in meiner IDE abgedeckt sind.

Das sieht VIEL zu komplex aus – zu viele Tasten. Ich möchte nicht "funktionsreich" sondern "feature spärlich". Das mag großartig für jemanden sein, der Verzweigungs- und Diff-Bäume und all das gute Zeug verstanden hat, aber nicht für einen Neuling, der nicht wirklich vorhat, Git zu lernen. Ich brauche etwas, das die Komplexität des einfachen Staging vor einem Commit beschönigt.
Ich habs. Soll ich einen anderen hinzufügen oder diesen löschen, um stattdessen einen zu setzen?
Ich kann einen Sinn darin sehen, es als Warnung für andere stehen zu lassen, was nicht gut zu dieser Frage passt, aber es wird (hoffentlich) nur ganz unten auf dem Stapel landen, und ich kann sehen, dass ich es später entfernen lassen möchte . Ich denke, das würde davon abhängen, ob Sie dachten, es sei eine gute/gültige Antwort auf diese Frage (Ihr anderer Eintrag scheint das Problem besser verstanden zu haben).
Endlich mal wieder jemand, der Sourcetree benutzt!
SourceTree ist bei weitem das Beste, aber sie haben keine Linux-Version. Das sieht zunächst einschüchternd aus, ist es aber überhaupt nicht. Sehr einfach zu bedienen.
Ich habe SourceTree verwendet, bin aber zu SmartGit gewechselt. SourceTress war nett, aber ich fand die Benutzeroberfläche umständlich. Persönliche Vorlieben sicher, aber ich finde die Schnittstelle auf SmartGit einfach leistungsfähiger. SourceTree ist immer noch ziemlich gut, aber nicht meine Präferenz.
Sie haben gerade die SourceTree-Oberfläche aktualisiert, wodurch sie etwas weniger sperrig wurde. Ich persönlich genieße es sehr. Ich war ein absoluter Anfänger mit dem ganzen Git-Ding und es dauerte nur ein paar Stunden, bis ich mich dank dieses Clients wohl genug fühlte.
@Caleb In diesem Screenshot sieht es komplizierter aus als Ihr Anwendungsfall. Ich empfehle dringend, zumindest ein bisschen in Git einzutauchen, wenn Sie ein Mitwirkender sind. Unwissenheit ist keine Entschuldigung. Sourcetree „funktioniert einfach“ und sieht dabei gut aus.
Ich habe immer einige Performance-Probleme. Es ist wirklich langsames Werkzeug. Mein gesamtes Team ist der gleichen Meinung.
Ich wünschte, sie hätten eine tragbare Version.
Es ist überhaupt nicht komplex ... Ich habe es in wenigen Minuten gelernt, nachdem ich frustrierende Erfahrungen mit anderen Kunden gemacht hatte. Smart Git ist tatsächlich bei mir abgestürzt, nachdem es gefragt hatte, ob es in Ordnung ist, Absturzinformationen zu senden, lol. Dies ist ein Absturz beim Laufen, daher konnte ich nicht einmal zum Hauptbildschirm gelangen. SourceTree ist großartig, abgesehen von einem leichten Einfrieren, wenn ich Dinge mit meinem Repo mache, das viele Dateien enthält.
GIT selbst verfügt über Funktionen, die jeder Benutzer lernen und verstehen sollte. "spärlich" und "einfach" sind gute Eigenschaften, aber im Fall von SourceTree müssen Sie wissen, was Sie tun. Die Kommentare zu "langsam" werden von mir wiederholt. Wenn Sie verstehen, was vor sich geht, dann wissen Sie, warum und wann Sie damit rechnen müssen, dass es langsam wird, aber ich finde es fast inakzeptabel, zusammen mit den ständigen Meldungen "Oh, wie peinlich SourceTree abgestürzt ist". Einmal hat ein Absturz tatsächlich eine Zusammenführung durcheinander gebracht und meinen Commit ernsthaft durcheinander gebracht, wodurch ziemlich viel Zeit verschwendet wurde. Schau mal in andere GUIs...
SourceTree ist fehlerhaft und fügt nicht wirklich eine Abstraktionsebene hinzu.
Wenn Sie sich für SourceTree entscheiden, bleiben Sie bei Version 1.7. 1,8 ist schrecklich. Download-Link für 1.7: downloads.atlassian.com/software/sourcetree/windows/…
SourceTree ist zu diesem Zeitpunkt ein unglaubliches Stück Müll (1.9.x). Es ist sehr langsam, stürzt links und rechts ab, die Benutzeroberfläche ist fehlerhaft und reagiert nicht und die Entwicklung konzentriert sich hauptsächlich auf die Aktualisierung der Symbole. Mein Blutdruck steigt jedes Mal, wenn ich es verwenden muss.

Ich mag Git für Windows (msysGit) sehr . Es hat drei "Modi" - Bash (wo Sie alles tun können ), Windows-Kontextmenü und GUI (wo Sie viel weniger tun können, aber ich würde sagen, es ist sehr benutzerfreundlich).

  • macht es relativ einfach einzurichten und zu initialisieren: Sehr einfach
    • ein oder mehrere lokale Repos: Die Initialisierung ist sehr einfach und Sie können ohne Konflikte so viele haben, wie Sie möchten.
    • eine einzelne git+ssh-Fernbedienung: Einfach - es ist ziemlich einfach, weitere Fernbedienungen hinzuzufügen, falls dies zu einem späteren Zeitpunkt gewünscht wird. (siehe Screenshot unten, auf den über GitGUI->remote->add zugegriffen wird)
    • Authentifizierung mit einem RSA-Schlüsselpaar (die Generierung wäre ein Bonus): Ja, Sie können es auch generieren, obwohl dies nur über die Befehlszeile erfolgt (siehe dieses Tutorial )
    • hat eine einfache Oberfläche, in der ein grundlegender Arbeitsablauf des Festschreibens und Pushens einfach zu bewerkstelligen ist, ohne die Feinheiten der verteilten Versionskontrolle zu verstehen: Ja, siehe Screenshot, es war viel einfacher für mich zu lernen, als ich anfing, mit Code zu spielen, als RapidSVN oder TortoiseSVN.

Von der cmdline aus können Sie ALLES tun (so ziemlich); Die GUI hat einige Funktionen, aber auf dem Frontscreen wird nichts Kompliziertes angezeigt (nur Commit-bezogen), alles andere ist in den Menüs versteckt.

Bildschirmfoto

Ich bin nicht gerade ein Noob, aber ich benutze Git nicht täglich und hatte viele Probleme damit - ich konnte kein Merge-Fenster finden. Das Hinzufügen von Dateien und das Rückgängigmachen von Änderungen war wirklich schwierig und die Benutzeroberfläche ist schwierig.

Das einfachste und einfachste, das ich je gesehen habe, ist GitHub für Windows :

GitHub für Windows-Screenshot

Aber es gibt eine Einschränkung : Die Verwendung mit Nicht-Github- Repositories ist nicht intuitiv (fühlt sich an wie ein Hack TBH) .

IMO, das Weglassen von Fetch und Push aus dem Vokabular schadet seiner Nützlichkeit als Nicht-Github-Tool.
Es ist zu einfach. Sehr schnell werden Sie feststellen, dass es nicht genug Funktionalität hat. ZB habe ich nicht gefunden, ob es Stash unterstützt.
Es ist nicht zu einfach für Neulinge, darum ging es beim OP.

Sie können erwägen, GitKraken zu verwenden . Einige Eigenschaften:

  • Kostenlos für nicht-kommerzielle Nutzung
  • Plattformübergreifend (Windows, Mac, Linux)
  • Unterstützung mehrerer Profile
  • Mit einem Klick rückgängig machen und wiederherstellen
  • Eingebautes Merge-Tool
  • Drag-and-Drop zum Zusammenführen, Rebasieren, Zurücksetzen, Pushen und mehr
  • In der Größe anpassbares, leicht verständliches Commit-Diagramm
  • Bildunterschiede in der App anzeigen
  • Untermodule und Gitflow-Unterstützung
  • Integration mit GitHub- oder Bitbucket-Konto

Geben Sie hier die Bildbeschreibung ein

ungit hat einen starken Fokus auf Benutzerfreundlichkeit und Verständlichkeit (wie der Name schon sagt)

https://github.com/FredrikNoren/ungit

Installieren:

npm install -g ungit

Es basiert auf Node.js und führt einen Server aus, den Benutzer im Browser anzeigen können, sodass es plattformübergreifend ist.

Ich bin mir nicht sicher, ob es SSH für Benutzer verwaltet, aber ich kann es definitiv sehen.

Diese GUI fasziniert mich. Ich bin nicht begeistert, dass es auf Javascript aufgebaut ist (persönliche Voreingenommenheit, nicht das Ende der Welt), aber die visuelle Benutzeroberfläche sieht so idiotensicher aus wie alles, was für Git möglich ist. Es gibt ein großartiges Tutorial für Ungit , aber leider ist es auf Französisch, aber es lohnt sich trotzdem, es sich anzusehen, nur um Ungit visuell in Aktion zu sehen.
Mir gefiel nicht, dass es ein "node_modules"-Verzeichnis in meinem Repo mit Tausenden von Dateien darin ablegt. Wieso den?
@TamásSzelei sag es niemandem, aber ich habe es nicht wirklich ausprobiert ;-) Aber behandelt es node_modulesbesonders? Passiert das nicht auch mit anderen Verzeichnissen? Ist es kein .gitignoreProblem?
Das kommt darauf an, wie man es betrachtet. Sie können gitignorees, sicher, aber ich zögere, jedem Benutzer dieses Repos eine Änderung aufzuzwingen, nur weil mein Git-Client (Teile davon?) seinen Quellcode in das Repo legt. Sicherlich würde jemand fragen, was zum Teufel ich mit "node_modules" in einem C++-Projekt mache.
@TamásSzelei ah, OK, es erstellt tatsächlich Dateien, ich dachte, es würde sie nur anzeigen. Fehlerbericht dann und Link dazu ;-)

Ich bin überrascht, dass kaum jemand Git Extensions erwähnt hat . Ich benutze es seit vielen Jahren und finde es benutzerfreundlicher als Tortoise Git.

Git Cola

  • plattformübergreifend (Linux, Windows, OSX)
  • FOSS
  • GitKraken bewirbt sich selbst als besser als Git Cola

Geben Sie hier die Bildbeschreibung ein

Ich verwende es als Haupt-Git-Schnittstelle unter Linux. Sehr einfach, alltägliche Operationen durchzuführen

  • Verpflichten
  • Letzten lokalen Commit rückgängig machen (Beschreibung ändern, fehlende Änderungen hinzufügen)
  • Änderungen für ausgewählte Zeilen übernehmen (nicht verwandte Änderungen isolieren)
  • Protokoll anzeigen (enthaltenes DAG-Tool)

https://git-fork.com/

Ich bin kürzlich von Sourcetree zu Fork umgezogen . Der Name ist für Google sehr schwer zu finden, aber es ist eine großartige Software. Das Killer-Feature für mich war, dass ich bestimmte Dateien speichern und anwenden konnte und nicht nur alle lokalen Änderungen. Es ist keine kostenlose Software ($50), aber es beschämt Sie einfach, wie es WinZip hin und wieder tut.

Geben Sie hier die Bildbeschreibung ein

Ich habe Fork oft empfohlen, bevor der Preis gestiegen ist, und es ist eine nette Software, aber sie erfüllt nicht die spezifischen Anforderungen dieser Frage.

Fürs Protokoll, ich habe nie etwas gefunden, das wirklich alles erfüllte, wonach ich in dieser Frage gesucht hatte.

Meine aktuelle Empfehlung, wenn ein Anfänger eine kostenlose GUI benötigt, ist GitAhead . Es hat ein paar Ecken und Kanten, ist aber die einfachste und sauberste Implementierung, die mir begegnet ist und die Open Source ist. Es ist Fork sehr ähnlich – es fehlt ein wenig von Forks Politur, aber es kommt auch nicht mit einem Preisschild.