Ich persönlich würde einfach Cygwin installieren und mit den üblichen *nix-Shell-Tools fortfahren, aber ich muss einigen Kunden, die etwas einsteigerfreundlicheres benötigen, eine Softwareempfehlung geben.
Die Situation ist die, dass mehrere Kunden eine Website entwickelt haben, die hauptsächlich aus statischem HTML besteht, aber der Server, auf den sie übertragen werden sollen, verfügt nicht über die übliche Sammlung von 1990er Protokollen (z.B. kein FTP). In der Tat gibt es keinen Zugang zu einer grafischen Schnittstelle. Das Deployment wird über Git abgewickelt. Änderungen müssen in ein entferntes Repository übertragen werden, das nur über eine SSH-Anmeldung zugänglich ist. Jede Übergabe an den Master-Zweig, die mit dem autorisierten Schlüssel durchgeführt wird, löst ein Hook-Skript aus, das die Site auf den Produktionsservern bereitstellt.
Ich möchte einen Git-Client für Windows vorschlagen, der:
Für jeden Kunden steht eine GitLab-Instanz zur Verfügung, die ein Projekt pro Domäne enthält und das Hinzufügen des öffentlichen Schlüssels recht einfach macht. Außerdem werden für jedes Projekt die URLs für Klone und entfernte Repositorys angegeben, so dass man den Status des entfernten Repositorys leicht überprüfen kann.
Open Source wäre zu bevorzugen, aber jede seriöse Freeware wäre akzeptabel. Auf welche Client-Software sollte ich sie verweisen?
Bearbeiten: Die meisten bisherigen Vorschläge scheinen sich auf vollwertige Frontends für alle Funktionen von Git's zu konzentrieren. Ich bin auf der Suche nach etwas einfacherem, das nur die Grundlagen abdeckt und besser für eine bestimmte Aufgabe geeignet ist, als mit den großen Hunden mitzulaufen. Ich denke hier an das KISS-Prinzip für Leute, die Versionskontrolle nicht für irgendetwas anderes verwenden und nur ihre Websites hochladen wollen.
Für Anfänger gibt es nichts Vergleichbares wie TortoiseGit.
Ich verwende Atlassian SourceTree und mag es sehr.
Hier's der Bohrer:
Kostenlos (kein Open-Source-Gedanke AFAIK)
Funktionsreich - Fast alle Funktionen von Git sind vorhanden (allerdings nicht die von GitHub, z.B. habe ich keine Möglichkeit gefunden, einen GitHub Fork zu rebasen. Es ist machbar mit normalen Git-Befehlen - Hinzufügen von Remote usw., aber nicht out of the box)
Unterstützt GitFlow
Schönes UI:
Fazit: Ich finde es nahezu perfekt und verwende es für alle Bedürfnisse, die meine IDE nicht abdeckt.
Ich mag Git für Windows (msysGit) sehr gerne. Es hat drei Modi - Bash (wo man alles machen kann), Windows-Kontextmenü und GUI (wo man viel weniger machen kann, aber ich würde sagen, es ist sehr benutzerfreundlich).
Von der cmdline aus kann man Alles tun (so ziemlich); die GUI hat zwar einige Funktionen, aber nichts Kompliziertes wird auf dem vorderen Bildschirm angezeigt (nur Übertragungen), alles andere ist in den Menüs versteckt.