@@ -39,11 +39,11 @@ In Gitlab _Personal Profile_ (oben rechts) -> _Edit Profile_ auswählen und in d
...
@@ -39,11 +39,11 @@ In Gitlab _Personal Profile_ (oben rechts) -> _Edit Profile_ auswählen und in d
Da bei Mac und Linux Betriebssystemen git schon vorinstalliert ist, muss lediglich auf Windows Rechnern git installiert werden.
Da bei Mac und Linux Betriebssystemen git schon vorinstalliert ist, muss lediglich auf Windows Rechnern git installiert werden.
Dafür downloadet man die Installationsdatei von `https://gitforwindows.org/` und führt diese aus. Während der Installation sollten alle Voreinstellungen die von git gemacht werden beibehalten werden.
Dafür downloadet man die Installationsdatei von `https://gitforwindows.org/` und führt diese aus. Während der Installation sollten alle Voreinstellungen von git beibehalten werden.
## Vorbereitung (Einmalig nach Installation)
## Vorbereitung (Einmalig nach Installation)
Als _user.name_ sollte man den zuvor ermittelten Benutzernamen auswählen.
Als _user.name_ sollte man den zuvor ermittelten Benutzernamen wählen.
***MAC:**
***MAC:**
Terminaleingabe:
Terminaleingabe:
...
@@ -52,7 +52,7 @@ Terminaleingabe:
...
@@ -52,7 +52,7 @@ Terminaleingabe:
> * git config --global user.name "mmustermann"
> * git config --global user.name "mmustermann"
***WINDOWS:**
***WINDOWS:**
Um das gitTerminal zu starten klickt man mit der rechten Maustaste auf eine freie Stelle in einem Ordner und wählt _Git Bash Here_ aus.
Um das Git-Terminal zu starten klickt man mit der rechten Maustaste auf eine freie Stelle in einem Ordner und wählt _Git Bash Here_ aus.
@@ -73,19 +73,17 @@ Für die installation der GUI _git-cola_ befolgt man die Anleitung für das jewe
...
@@ -73,19 +73,17 @@ Für die installation der GUI _git-cola_ befolgt man die Anleitung für das jewe
`http://git-cola.github.io/downloads.html`
`http://git-cola.github.io/downloads.html`
# Klonen : Das Projekt vom Server laden
Ziel ist das Klonen des Repositories "HelloWorld" auf das eigene System, um lokal auf die Inhalte zugreifen zu können. Mithilfe von git-cola erfolgt dies auf allen Systeme analog. Einzig das SSL-Zertifikat und die Benutzerdaten müssen zuvor **einmalig** hinterlegt werden.
# Klonen des Projekts (Repository)
Ziel ist das Klonen des Repositories "HelloWorld" auf das eigene System, um lokal auf die Inhalte zugreifen zu können. Mithilfe von git-cola erfolgt dies auf allen Systeme analog. Einzig das SSL-Zertifikat und die Benutzerdaten müssen zuvor **einmalig** hinterlegt werden.
## Klonen des Projekts (Repository)
## Mittels GUI
#### a) Starte _git-cola_ und klicke auf _Klonen..._
#### a) Starte _git-cola_ und klicke auf _Klonen..._
#### c) Es wird nach einer Authentifizierung gefragt. Hierzu den zuvor ermittelten Benutzernamen und das festgelegte Passwort eingeben.
#### c) Es wird nach einer Authentifizierung gefragt. Hierzu den zuvor ermittelten Benutzernamen und das festgelegte Passwort eingeben.
> ID: mmustermann
> ID: mmustermann
> PW: 123456
> PW: 123456
#### d) Nun wurde das Projekt geklont und es muss ein neuer Branch erstellt werden.
#### d) Nun wurde das Projekt geklont und es muss ein neuer Branch erstellt werden.
## Erstellen von einem Branch im Projekt (Repository)
## Alternativ mittels Terminalbefehle
Um ein Projekt zu klonen, erstellt man ein Neuen Ordner für das Projekt, startet das Git-Terminal und gibt folgenden Befehl ein `git clone Repository-Adresse`
> **Erinnerung:** Um das Git-Terminal zu starten klickt man mit der rechten Maustaste auf eine freie Stelle in einem Ordner und wählt _Git Bash Here_ aus.
In unserem Fall lautet die Repository-Adresse `https://git-ce.rwth-aachen.de/assistance-systems/helloworld.git`
Somit lautet der Befehl um dieses Repository zu klonen `git clone https://git-ce.rwth-aachen.de/assistance-systems/helloworld.git`
Nach erfolgreicher Eingebe von Benutzernamen und Passwort wird das Repository geklont.
# Erstellen von einem Branch
## Mittels GUI
Zum erstellen von einem neuen Branch klickt man auf _Branch_ **(1)** und anschließend auf _Neu_ **(2)**
Zum erstellen von einem neuen Branch klickt man auf _Branch_ **(1)** und anschließend auf _Neu_ **(2)**
...
@@ -116,7 +127,25 @@ Anschließend gibt man dem neuen Branch einen Namen, z.b. Gruppe01 **(1)** und k
...
@@ -116,7 +127,25 @@ Anschließend gibt man dem neuen Branch einen Namen, z.b. Gruppe01 **(1)** und k
> **Anmerkung:** Die folgenden Befehle können nur ausgeführt werden, wenn der angezeigte Pfad im Terminal das Hauptverzeichnis des lokalen Repositories ist.
Folgender Befehl wird im Terminal eingegeben, um den neuen lokalen Branch (hier: Test) zu erstellen und in diesen Branch zu wechseln:
`git checkout -b Test`
> Mit dem checkout-Befehl ist es möglich jederzeit zwischen den verschiedenen Branches zu wechseln.
Nun wird mit folgendem Befehl der Code zum entfernten Branch _Test_ des GitLab-Projekts hinzugefügt:
`git push origin new_feature`
# Pushen des Projekts
## Mittels GUI
Die lokal vorhandenen Branches werden unter _Branches_ **(1)** angezeigt, wo der aktuell ausgewählte Branch mit einem Stern gekennzeichnet ist.
Die lokal vorhandenen Branches werden unter _Branches_ **(1)** angezeigt, wo der aktuell ausgewählte Branch mit einem Stern gekennzeichnet ist.
Geänderte bzw. hinzugefügte Daten im geklonten Projekt Ordner werden im Hauptfesnter unter Zustand **(2)** angezeigt. Durch Doppeltklick auf die geänderten bzw. hinzugefügten Daten merkt diese für den Upload (Push) vor. Dies wird durch einen grünes Dreieck gekennzeichnet.
Geänderte bzw. hinzugefügte Daten im geklonten Projekt Ordner werden im Hauptfesnter unter Zustand **(2)** angezeigt. Durch Doppeltklick auf die geänderten bzw. hinzugefügten Daten merkt diese für den Upload (Push) vor. Dies wird durch einen grünes Dreieck gekennzeichnet.
...
@@ -142,7 +171,36 @@ Sollte schon ein externer Branch erstellt worden sein, so wählt man diesen zuvo
...
@@ -142,7 +171,36 @@ Sollte schon ein externer Branch erstellt worden sein, so wählt man diesen zuvo
# Pullen: Herunterladen/Synchronisieren eines Projektes
## Alternativ mittels Terminalbefehle
> **Anmerkung:** Die folgenden Befehle können nur ausgeführt werden, wenn der angezeigte Pfad im Terminal das Hauptverzeichnis des lokalen Repositories ist.
#### a) Wenn Änderungen im lokalen Repository vorgenommen wurden, dann sollten diese zum Index mit folgendem Terminalbefehl hinzugefügt werden:
`git add .`
#### b) Nun kann ein Commit einschließlich einer Kurzbeschreibung der Änderung mit folgendem Terminalbefehl durchgeführt werden:
`git commit -m "Hier steht ein Kommentar"`
> Dadurch wird nicht das Repository auf GitLab aktualisiert, sondern nur das lokale Repository.
#### c) Nun können die Änderungen mit folgendem Terminalbefehl zum Remote-Repository hinzugefügt werden:
`git push REMOTE BRANCHNAME`
> REMOTE ist der Name des remote Servers. Wenn ein Projekt geklont wird, dann ist der von git vergebene Standardname origin.
In unserem Beispiel lautet der Befehl somit:
`git push origin Test`
# Pullen eines Projektes
## Mittels GUI
Sollte das git-Repo (Projekt) unterschiede zur lokalen Kopie aufweisen, muss vor dem arbeiten am Projekt ein sog. "pull" stattfinden.
Sollte das git-Repo (Projekt) unterschiede zur lokalen Kopie aufweisen, muss vor dem arbeiten am Projekt ein sog. "pull" stattfinden.
Dafür wählt man den Reiter _Befehle_ **(1)** aus und klickt auf _Holen und zusammenführen_ **(2)**.
Dafür wählt man den Reiter _Befehle_ **(1)** aus und klickt auf _Holen und zusammenführen_ **(2)**.
...
@@ -154,6 +212,19 @@ Anschließend wählt man den Branch aus von dem man den sog. Pull machen möchte
...
@@ -154,6 +212,19 @@ Anschließend wählt man den Branch aus von dem man den sog. Pull machen möchte
> **Anmerkung:** Die folgenden Befehle können nur ausgeführt werden, wenn der angezeigte Pfad im Terminal das Hauptverzeichnis des lokalen Repositories ist.
Um Änderungen aus einem remote Repository zu downloaden und mit dem lokalen Repository zu synchronisieren wird folgender Terminalbefehl ausgeführt:
`git pull PFAD BRANCHNAME`
> PFAD ist die Repository-Adresse, für dieses Beispiel lautet diese `https://git-ce.rwth-aachen.de/assistance-systems/helloworld.git`
*[Workflow: lokales Projekt in GitLab anlegen](https://git-ce.rwth-aachen.de/assistance-systems/helloworld/-/wikis/Workflow:-lokales-Projekt-in-GitLab-anlegen)
*[Workflow: lokales Projekt in GitLab anlegen](https://git-ce.rwth-aachen.de/assistance-systems/helloworld/-/wikis/Workflow:-lokales-Projekt-in-GitLab-anlegen)