Wiki/Linux/Git.md

122 lines
2.7 KiB
Markdown

# Git Basic commands
Neue Files werden mit `git add .` gestasht somit sind diese in der Que um hochgeladen zu werden. Alle files aus der `.gitignore` file werden dabei ignoriert.
```
git add .
```
Wir können einen neuen Commit mit `git commit -m " "` erstellen in den Anführungszeichen, kommt die Message bzw. der Kommentar hin.
```
git commit -m "Commit Message"
```
Wenn du nicht spezifische files in einen Commit staschen willst sondern alle geänderten files commiten willst kannst du damit alles adden und commiten:
```
git commit -am "Commit Message"
```
Um deine Commits in den Remote zu laden:
```
git push -u origin [master/main] # bzw. BranchName anstelle von Master/Main
```
Um deinen Lokalen Master/Main auf den neusten Stand zu bringen verwende:
```
git pull origin [master/main]
```
Um den neusten Commit zu löschen verwende:
```
git reset HEAD~1
```
## Branches
Neue Remote Branches können mit git fetch geladen werden.
```
git fetch --all
```
Um eine Lokale Branch zu erstellen kannst du folgenden command verwenden:
```
git checkout -b <branch-name>
```
Um diese Branch auch im Remote Origin zu erstellen benutze:
```
git push --set-upstream origin branch-name
```
Um eine Lokale Branch zu löschen kannst du folgenden command verwenden:
```
git branch -d <branch-name>
```
Mit git switch kannst du direkt auf eine Branch einen checkout machen welche nur im remote existiert.
```
git switch <existing-branch-name> # Checkout und fetch einer bestehenden Branch im Remote
git switch -c <non-existing-branch-name> # Erstellt eine neue Branch
```
## Git Merge
Um die neusten updates in deine Branch zu fetchen kannst du folgende commands ausführen:
```
git checkout yourWorkingBranch # Moved dich in deine Branch
git fetch origin # Updated deine Origin Branch
git merge origin/[master/main] # Update deiner branch mit dem Master/Main
```
# Git init neue Repo
Um ein neues repo zu erstellen, benutzen wir Lokal git init.
```
git init
```
Damit wird der .git folder erstellt.\
Wir erstellen jetzt die Main Branch welche wir auch in unserem Remote haben werden.
```
git branch -M main
```
Wir müssen nun ein Remote hinzufügen. Dies ist mit folgendem command möglich:
```
git remote add origin git@github.com:[DeinUsername]/DeinProjektName.git
```
Jetzt können wir unseren ersten Commit Pushen damit das Projekt ersteinmal auf dem Remote ist.
```
git add .
git commit -m "first commit"
git push -u origin main
```
# Git Config
```
git config --global user.name "YOUR_USERNAME"
git config --global user.email "im_satoshi@musk.com"
git config --global --list # Um deine Infos zu überprüfen
```
# Upload / Sync 2 Repos
<https://www.opentechguides.com/how-to/article/git/177/git-sync-repos.html>