====== Git Extensions ====== [[https://gitextensions.github.io/|Git Extensions]] ist ein stand alone UI Tool zum managen von [[https://git-scm.com/|Git]] Repositories. Es integriert sich auch in den Windows Explorer. ===== Tutorials ===== In diesem Bereich werden typische Arbeitsschritte in [[https://gitextensions.github.io/|Git Extensions]] beschrieben. ==== Pushen eines bestehenden Workrepository in ein neues/leeres Repository ==== Die nachfolgende Anleitung beschreibt, wie ein bereits existierendes Workrepository in ein neu erzeugtes, leeres, zentrales Repository gepushed werden kann.\\ ACHTUNG:\\ Voraussetzung für die folgenden Schritte ist, dass das zentrale Repository bereits in Gitea erzeugt worden ist. Wie das Funktioniert ist unter [[software:programmieren:gitea:start#ein_repository_aus_einem_bestehenden_workrepository_erzeugen|Ein Repository aus einem bestehenden Workrepository erzeugen]] beschrieben.\\ - Starte //Git Extensions//. - Lade das Workrepository welches gepushed werden soll. - Starte //Gitea//. - Wähle das Zentrale Repository, in welches das Workrepository gepushed werden soll, aus. - Stelle sicher, dass im oberen Bereich die Option **//HTTPS//** ausgewählt ist.\\ {{software:programmieren:gitextensions:remote_verknuepfung1.png}} - Kopiere die hinter HTTPS/SSH angegebene Verknüpfung, mit der links neben der Verknüpfung angebrachten **//URL kopieren//** Funktion.\\ {{software:programmieren:gitextensions:remote_verknuepfung2.png}} - Wechsle zurück nach //Git Extensions//. - Wähle den Menüpunkt **//Repository//** | **//Remote Repoitories...//** aus. - Im sich öffnenden Dialog gib folgendes ein: - Einen Name, für die Remote-Verknüpfung zum Workrepository. - Unter URL füge die vorher in Gitea kopierte Verknüpfung ein. - Zum Schliessen des Dialogs, speichere die Einstellungen mit **//Save changes//**. - Bestätige die beiden nächsten Abfragen. - Schliesse den Dialog, durch Auswahl von **//X//** in der rechten oberen Ecke. - Zum Pushen wähle **//Commands//** | **//Push...//** aus. - Im sich öffnenden Dialog führe die folgenden Schritte aus: - Stelle Sicher, dass im Bereich //Push to// unter //Remote//, der zuvor erzeugte Remot-Verknüpfung angezeigt wird.\\ Ist das nicht der Fall, dann wähle die korrekte Remote-Verknüpfung aus dem Rollup Menü aus. - Stelle sicher das die Registerkarte //Push branches// ausgewählt ist. - Stelle sicher das unter //Branch to push// **//master//** und unter //to// auch **//master//** ausgewählt ist. - Wähle die Option **//Show options//** aus. - Aktiviere die Optionen **//Force Push//** und **//Replace tracking reference//**. - Starte den Push-Vorgang durch auswählen von **//Push//**. - Die Frage //Force push may overwrite changes since your last fetch. Do you want to use the safer force with lease instead?// bestätige mit **//Nein//**. - Der Push-Vorgang wird nun gestartet. Sobald er durchgelaufen ist, wird die Schaltfläche //OK// aktiv. - Den Dialog durch auswählen von **//OK//** schliessen. Wenn alles ohne Fehler durchgelaufen ist, dann wurde der erste Push-Vorgang erfolgreich abgeschlossen.