188 lines
4.5 KiB
Markdown
188 lines
4.5 KiB
Markdown
# Git
|
|
|
|
Git ist nen Versionverknalltütenprogramm was eder brauch oder auch nicht.
|
|
|
|
## Inhaltsverzeichniss
|
|
1. [Git Configurieren](#git-cofigurieren)
|
|
2. [Start](#start)
|
|
3. [Daten hinzufügen und entfernen](#daten-hinzufügen-und-entfernen)
|
|
4. [Neue Version an Git geben und überprüfen](#neue-version-an-git-geben-und-überprüfen)
|
|
5. [Mit Git Servern arbeiten](#mit-git-servern-arbeiten)
|
|
6. [push und pull](#push-und-pull)
|
|
7. [Branches](#branches)
|
|
8. [Grafisches Git](#grafisches-git)
|
|
|
|
## Git Cofigurieren
|
|
|
|
>### Nutzername
|
|
>```
|
|
>git config user.name "<user-name>"
|
|
>```
|
|
>>- Setzt den Nutzername für das Aktuelle Repo
|
|
>>- Wenn kein Name angegeben ist wird der aktuelle Festgelegter Name ausgegeben
|
|
>>- Wen nach config ein --global gesetzt wird dann wird das für die ganze git installation des Benutzer festgelegt oder usgegeben
|
|
|
|
>### E-Mail
|
|
>```
|
|
>git config user.name "<e-mail>"
|
|
>```
|
|
>>- Setzt die E-Mail für das Aktuelle Repo
|
|
>>- Wenn keine E-Mail angegeben ist wird der aktuelle Festgelegte E-Mail ausgegeben
|
|
>>- Wen nach config ein --global gesetzt wird dann wird das für die ganze git installation des Benutzer festgelegt oder usgegeben
|
|
|
|
## Start:
|
|
Ein Repo ist ein Ding wo deine Projektdaten gespeichert sind.
|
|
|
|
>### Initialisieren deines Repos:
|
|
>```
|
|
>git init
|
|
>```
|
|
|
|
>### Downloade ein existierenes Repo:
|
|
>```
|
|
>git clone <url>
|
|
>```
|
|
Nun kannst du mit Git arbeiten z.b. Daten Erstellen und bearbeiten
|
|
|
|
## Daten hinzufügen und entfernen:
|
|
|
|
>### Füge Daten zum Repo hinzu:
|
|
>```
|
|
>git add <datei>
|
|
>```
|
|
>>Beispiel:
|
|
>>```
|
|
>>git add README.md
|
|
>>git add .
|
|
>>git add ./README.md
|
|
>>```
|
|
|
|
>### Entferne Daten von Repo:
|
|
>```
|
|
>git rm <datei>
|
|
>```
|
|
>>Beispiel:
|
|
>>```
|
|
>>git rm README.md
|
|
>>git rm .
|
|
>>git rm ./README.md
|
|
>>```
|
|
|
|
## Neue Version an Git geben und überprüfen:
|
|
>### Commit erstellen:
|
|
>```
|
|
>git commit <message>
|
|
>```
|
|
>> eine Message ist Pflicht!
|
|
|
|
>### Log anschauen
|
|
>```
|
|
>git log
|
|
>```
|
|
>> Zeigt dir deine commits an und auch was du geändert hast
|
|
|
|
|
|
>### Status ansehen
|
|
>```
|
|
>git status
|
|
>```
|
|
>> Zeigt dir deine Aktuellen Änderungen an und den aktuelen Branch
|
|
|
|
## Mit Git Servern arbeiten:
|
|
>### Füge ein entferntes Repo hinzu:
|
|
>```
|
|
>git remote add origin <url>
|
|
>```
|
|
>>- Die adresse muss mit .git enden
|
|
>>- origin ist die Bezeichnung des entfernen Repos
|
|
|
|
>### Entferne ein entferntes Repo :
|
|
>```
|
|
>git remote rm origin <url>
|
|
>```
|
|
|
|
## push und pull:
|
|
>### push ladet den Branch auf den Server:
|
|
>```
|
|
>git push origin main
|
|
>```
|
|
>>- origin ist die Beschreibung des Remote Servers
|
|
>>- main Ist Der Branch der gepusht werden soll
|
|
>>- push(en) = drücken(de)
|
|
|
|
>### pull ladet den Branch von Server:
|
|
>```
|
|
>git pull origin main
|
|
>```
|
|
>>- origin ist die Beschreibung des Remote Servers
|
|
>>- main Ist Der Branch der gepusht werden soll
|
|
>>- pull(en) = ziehen(de)
|
|
|
|
## Branches
|
|
|
|
Branches auch Zweige sind einfach mehrere Arbeitsflächen.
|
|
|
|
>### Neuen Branch erstellen
|
|
>```
|
|
>git branch <branch-name>
|
|
>```
|
|
>>- Erstellt einfach ein Abbild von den aktuellen Branch
|
|
>>- Du bist aber immer noch auf den Aktuellen Branch
|
|
|
|
>### Branch wecheln
|
|
>```
|
|
>git checkout <branch-name>
|
|
>```
|
|
>> Nun hast du den Branch gewechselt
|
|
|
|
>### Branches zusammenführen
|
|
>```
|
|
>git merge <branch-name>
|
|
>```
|
|
>>- Nimmt die Änderungen von den angegebenen Branch und Schiebt sie auf den aktuellen Branch
|
|
|
|
>### Branches loschen
|
|
>```
|
|
>git branche -d <branch-name>
|
|
>```
|
|
>>- Du darfst blos nicht in diesen Branch sein also mit checkout in ein anderen Branch wechseln
|
|
|
|
## Forks und Pull Requests
|
|
|
|
ein Fork ist eine unabhängige Kopie eines Repos.
|
|
|
|
Ein Pull Request ist eine aufforderung an Die Mittarbeiter des original Repos und den Fork zu mergen also um alle änÄderungen des Forkes in das original Repo zu übernehmen.
|
|
|
|
>### Fork erstellen und bearbeiten
|
|
>1. In der Weboberfläche oben rechts auf Fork klicken
|
|
>2. Den erstellten Fork in Profil suchen und git url oder ssh kopieren
|
|
>3. In der Konsole git clone ausführen
|
|
>4. Änderungen machen
|
|
>5. Pushen
|
|
|
|
>### Pull Request erstellen
|
|
>1. In er Weboberfläche das original Repo öffnen
|
|
>2. In Tab Pull Request ein Pull Request erstellen und den passenden Start und as passende Ziel Repo auswählen und passende Infos hinzufügen
|
|
>3. Auf erstetellen klicken und Mit en Entwicklern besprechen was man damit nun tut
|
|
|
|
## Grafisches Git
|
|
|
|
Falls man den überblick verliehrt ist es hilfreich sich Das Repo grafisch anzusehen.
|
|
|
|
>### Git Gui
|
|
>```
|
|
>git gui
|
|
>```
|
|
>> Grafische Benutzeroberfläche mit vielen Features
|
|
|
|
>### Gitk
|
|
>```
|
|
>gitk
|
|
>```
|
|
>> Eher um die Vergangenheit des Projetes anzuschauen
|
|
|
|
>### Entwicklerplattformen
|
|
>Viele Entwicklerplattformen haben eine git intigration
|
|
>>- Visual studio Code
|
|
>>- Jetbrains IDE
|
|
>>- ...
|