<- Entwicklung / VS Code | Git | GitLab

Workflow VS Code -> Git -> GitLab

Git for Windows installieren

git for windows herunterladen und installieren. Bei der Installation kann ausgewählt werden, dass Visual Studio Code der Default-Editor für die Git-Installation sein soll.

image/svg+xml VS Code Terminal auf Git Bash einstellen

Nach der Installation von git for windows wird man bei dem nächsten Start von VS Code gefragt, welches das Standard Terminal sein sollen. Hier wählen wir bash aus.

Sollte VS Code nicht nachfragen und schon ein anderes Terminal voreingestellt sein, so muss man über die Einstellungen ändern, dass man bash nutzen möchte. Dazu öffnen wir in VS Code die Einstellungen und geben dort in der Suche terminal.integrated.shell.windows ein. Den Pfad zur Shell tauuschen wir dann gegen C:\\Program Files\Git\bin\bash.exeaus.

Mit cd /c kommt man innerhalb der bash auf das Laufwerk c:\.

image/svg+xml VS Code GitLab Extension installieren

Ressourcen:

Anleitung VS Code GitLab Extension

Als erstes suchen wir in VS Code unter Erweiterungen (Extensions) nach GitLAB Workflow und installieren diese.

image/svg+xml VS Code bei GitLab authentifizieren

Für die Authentifizierung von VSCode an dem entsprechenden GitLab Server wird über die URL https://<mein-GitLAB-Server>/profile/personal_access_tokens ein Acess Token für VSCode erstellt. Für <mein-GitLAB-Server> wird die FQDN des eigenen GitLAB Server eingetragen oder gitlab.com, wenn man den offiziellen GitLAB Server nutzt.

In GitLab wird der Access Token unter Settings / Access Token erstellt. Unter Scopes habe ich alles ausgewählt, bis auf sudo.

Achtung

Den Access Token kann man sich nur direkt nach der Einrichtung anzeigen lassen. Am besten, man kopiert den Token und sichert diesen in einem Passwortsafe.

In VS Code muss der Access Token nun eingetragen werden. Dazu öffnet man die Kommandopalette mit SHIFT STRG+P und sucht nach GitLab: Set GitLab Personal Access Token und drückt dann ENTER.

Im folgenden Dialog gibt man den GitLAB Server an, auf dem man arbeiten möchte und kopiert den Access Token rein. Es erscheint noch ein Anmeldefenster, bei dem man sich einmal mit seinen GitLAB Anmeldedaten authentifiziert.

VS Code ist nun mit GitLAB verbunden.

logo-square Created with Sketch. Bestehendes GitLab Repository in VS Code kopieren

Über SHIFT STRG+P und Git:klonen kann nun ein bestehendes Repository in VS Code eingelesen werden. Dazu benötigt man die URL des entsprechenden Repository.

Als erstes wird man nach einem lokalen Ordner gefragt, in dem das Respository abgelegt werden soll. In diesem Ordner wird dann ein neuer Ordner angelegt, mit dem Namen des Respository.

Danach erfolgt die Abfrage der eigenen Nutzerdaten auf dem GitLab Server (Benutzername und Passwort).

Nachdem die Daten von GitLab kopiert wurden, wird man gefragt, ob man den Ordner öffnen möchte. Dies kann man aber auch jederzeit nachtträglich manuell machen.

Den Status der branch kann man mit Git abfragen. Dazu öffnet man in VS Code ein neues Terminal mit STRG + ö. Wenn die Git Bash akitv wurde steht das Verzeichnis direkt auf dem Projektordner. Mit git status kann man sich nun den Staus der Branch ansehen.

logo-square Created with Sketch. Bestehenden Ordner in GitLab in ein neues Repository übernehmen

logo-square Created with Sketch. In GitLab ein neues Projekt anlegen

Als erstes wird in GitLab ein neues Projekt angelegt, im Beispiel hier das Projekt tbs-intranet.

Bestehende Dateien und Ordner ins Projekt übernehmen

In VS Code öffnen wir nun den vorhandenen Ordner mit den Dateien und Ordnern des bestehenden Projekts.

Um die folgenden Kommandos einzugeben öffnen wir ein neues Terminal in VS Code mit STRG SHIFT + ö.

Der Dateipfad sollte dort auf dem Projektordner stehen, den wir nun in GitLab übernehmen wollen. Ansonsten wechseln wir erst mit cd /pfad/mein-projekt-ordnerzum vorhandenen Projektordner.

Dort führen wir dann nach und nach folgende Kommandos aus:

git init
git remote add origin https://<mein GitLAB Server>/<mein GitLab Name>/<mein leeres GitLab Projekt>.git
git add .
git commit -m "Initial commit"
git push -u origin master
1
2
3
4
5

Tipp

Wenn man in GitLab ein leeres Projekt (auch ohne README.md) angelegt hat, werden die obigen Kommandos mit der richtigen URL für https://<mein GitLAB Server>/<mein GitLab Name>/<mein leeres GitLab Projekt>.git angezeigt.

logo-square Created with Sketch. GitLab Infos in einem leeren Projekt

Tipp

Legt man ein leeres Projekt ohne eine Datei in GitLab an werden folgende Infos angezeigt:

The repository for this project is empty
If you already have files you can push them using the command line instructions below.
Note that the master branch is automatically protected. Learn more about protected branches
Command line instructions
Git global setup

git config --global user.name "<mein Vorname> <mein Nachname>"
git config --global user.email <"meine-gitlab@email-adresse.de">
1
2

Create a new repository

git clone https://<mein GitLAB Server>/<mein GitLab nahme>/<mein leeres GitLab Projekt>.git
cd tbs-intranet
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master
1
2
3
4
5
6

Existing folder

cd existing_folder
git init
git remote add origin https://<mein GitLAB Server>/<mein GitLab Name>/<mein leeres GitLab Projekt>.git
git add .
git commit -m "Initial commit"
git push -u origin master
1
2
3
4
5
6

Existing Git repository

cd existing_repo
git remote rename origin old-origin
git remote add origin https://<mein GitLAB Server>/<mein GitLab Name>/<mein leeres GitLab Projekt>.git
git push -u origin --all
git push -u origin --tags
1
2
3
4
5

Branch von mehreren Standorten bearbeiten

Möchte man von mehreren PC7s/Macs an der gleichen Kopie (Klone) arbeiten, kann man per git statusabfragen, ob die eigene Kopie des Projekts gerade aktuell ist.

Beispiel:

Standarot A und B haben den gleichen Status vom Projekt. Nun werden am Standort A Änderungen vorgenommen und per commmit und pull in die Branch übernommen.

Möchte man nun am 2. Standort (B) weiterarbeiten und ist sich unsicher, ob alle Änderungen in der lokalen Branch enthalten sind, so kann man einfach per STRG + ö in VS Code ein Terminalfenster öffnen und den Git Staus der lokalen Branch abfragen.

$ git status
On branch master
Your branch is behind 'origin/master' by 1 commit, and can be fast-forwarded.
  (use "git pull" to update your local branch)
nothing to commit, working tree clean
1
2
3
4
5

In dem Beispiel oben ist die eigene Branch im Projekt ein Commit hinterher. Mit git pull wird die lokale Branch auf den aktuelle Stand gebracht.

$ git pull
Updating 93408a4..793260d
Fast-forward
 docs/.vuepress/override.styl | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
1
2
3
4
5

Wenn man nun den aktuellen Status noch einmal abfragt, erhält man die Info, dass die eigene Branch dem aktuellen Stand entspricht.

$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working tree clean
1
2
3
4

Ressourcen

Ein guter Artikel zu den wichtigsten Schritten mit Git und dem Zusammenspiel mit einem Onlinedienst für Git (Github, GitLab, ...) ist Git für Einsteiger von Thomas Leister.

Letzte Änderung: 2019-6-15 3:23:01 PM