Willkommen

Übung Prog 2

Was machen wir heute?

  • Wiederholung Commandline
    • cmd & co
    • Chocolatey
    • git
    • gradle
  • Verfrühte Abgaben

cmd & co

Es gibt:

  • Git-Bash (win / mac)
  • Bash (linux)
  • cmd (win)
  • PowerShell (win)
  • Terminal (mac)
  • ZSH (mein Favorit) (linux/wsl)
  • fishshell (linux/wsl)
  • etc.

Der große Unterschied?

SameButDifferentMeme

cmd & co

Was? cmd /bash
Wechsel des Verzeichnisses cd <path>
Listet alle im aktuellen Verzeichnis befindliche dir / ls
Wechsel ins darüberliegende Verzeichnis cd ..
Ausgeben einer Datei cat
Anfang einer Datei ausgeben head
Ende einer Datei ausgeben less or tail
Start eines Texteditors more about vim vim or nano
Schließt Konsole exit
Gibt Eingabe aus (auch Parameter mit $ oder %%) echo

Allgemeiner Tipp: <commando> --help gibt eine Bedinungsanleitung 💥

Chocolatey

Ist ein Paketprogramm mit dem es möglich ist Programme (ohne irgendwelche installer Werbung etc.) zu installieren.

Großer Vorteil: Alle Programme gleichzeitig updaten

Docu Chocolatey

Chocolatey

Befehl Wirkung
choco --list zeigt alle installierten Programme an
choco install <programm name> installiert genanntes Programm in der aktuellsten Version
choco install <programm name> -y installiert genanntes Programm ohne Rückfrage
choco search <programm name> sucht online nach verfügbaren Paketen
choco upgrade all updated alle installierten Programme
choco upgrade <programm name>
choco upgrade all --noop schaut welche Programme zu updaten sind

git

Was ist git?

Es ist ein Versionierungsprogramm, dass es mehreren Programmierer:innen gleichzeitig erlaubt code zu maintainen. Dies wird durch Branches, Commits und viele weitere Funktionalitäten gewährleistet.
Ziel ist es immer einen funktionierenden Stand zu haben.

Unterschied zu GitHub

GitHub ist ein Webbasierter Dienst. Sozusagen die Cloud für git. Git wiederum ist ein Programm, dass die Möglichkeit hat Code von lokal an einen solchen Webservice zu senden (hochladen).

git

Befehl Wirkung
git init erstellt ein lokales repository
git clone <url> lädt ein Repository herunter
git add <File || .> staged ein File oder alles im aktuellen Ordner
git commit -m führt einen lokalen commit mit Message aus
git push lädt aktuelle commits hoch
git pull updated aktuellen branch mit remote
git fetch updated das repository mit remote
git status zeigt aktuellen status (Änderungen zu vorherigem Commit) an
git switch -c erstellt neuen Branch
git switch wechselt auf neuen Branch

git

Befehl Wirkung
git merge führt den Code aus genannten Branch in den aktuellen über
git rebase tut so als ob man vom genannten Branch abgebrancht hätte
git stash aktuell ungestage Änderungen werden zwischengespeichert
git stash pop 1 Stack des Stashs wird wieder angewand
git pop --index 3 4 Stack des Stashs wird wieder angewand
git stash drop löscht obersten Stack des Stashs
git stash show zeigt den Stash-Stack

gradle

Bei Gradle handelt es sich um ein auf Java basierendes Open-Source Build-Management-Automatisierungs-Tool.

Darunter versteht man Tools, die sowohl den Quellcode kompilieren, die Tests ausführen, ein Package aus den Files erstellen (z.B. zu einem Jar) und sich anschließend auch um das Deployment und die Ausführung des Programms kümmern.

gradle

Befehl Wirkung
gradle init erstellt ein neues gradle Projekt
gradle clean löscht das Build-Verzeichnis (default ./build)
gradle build kompiliert projekt und führt Tests aus
gradle test führt Tests ausö

Wiederholung Vorlesungsinhalte