139 lines
5.0 KiB
Markdown
139 lines
5.0 KiB
Markdown
# Labor Setup (Praxisteil, 150min)
|
|
|
|
- **Fragen Sie frühzeitig nach, falls Unklarheiten bestehen**.
|
|
- Fragen Sie alles, was Ihnen im Rahmen der Lehrveranstaltung wichtig erscheint.
|
|
- Es gibt keine Einschränkungen für die Zusammenarbeit zwischen Studierenden beim Bearbeiten der untenstehenden Aufgaben.
|
|
- Sie haben das Labor erfolgreich absolviert, wenn Sie alle drei Teilaufgaben bei einem Betreuer **demonstriert** haben.
|
|
- Melden Sie sich bei einem Betreuer, sobald Sie sich in der Lage sehen alle drei Aufgaben zu demonstrieren.
|
|
|
|
---
|
|
|
|
Im heutigen Labor sollen Sie die folgenden drei Aufgaben abarbeiten.
|
|
|
|
---
|
|
|
|
### A. Vervollständigen der Konfiguration im Labor
|
|
|
|
Sie sollen die Konfiguration der Entwicklungsumgebung auf Ihrem Laborrechner mit den unten stehenden Befehlen vervollständigen (nur Schritt 2. und 5. nehmen eine Konfigurationsänderung vor, alle anderen Schritte sind rein informativ, sollen aber trotzdem ausgeführt werden).
|
|
|
|
1. **Betriebssystem**, bereits installiert.
|
|
```shell
|
|
uname -a
|
|
```
|
|
2. **git**, bereits installiert, **aber noch nicht konfiguriert** (Email und Namen in den Befehlen bitte anpassen)
|
|
|
|
```shell
|
|
git version
|
|
|
|
# TODO: adapt the student ID and name in the commands below
|
|
|
|
git config --global user.email "eXXXXXXX@student.tuwien.ac.at"
|
|
git config --global user.name "Firstname Lastname"
|
|
git config --global init.defaultBranch main
|
|
git config --global credential.helper "cache --timeout 300"
|
|
```
|
|
|
|
3. **Compiler/Tools**, bereits installiert.
|
|
|
|
```shell
|
|
gcc --version
|
|
g++ --version
|
|
gdb --version
|
|
clangd --version
|
|
cmake --version
|
|
```
|
|
|
|
4. **VSCode**, bereits installiert.
|
|
|
|
```shell
|
|
code --version
|
|
```
|
|
|
|
5. **VSCode Erweiterungen**, **noch nicht installiert**.
|
|
|
|
```shell
|
|
code --install-extension ms-python.python
|
|
code --install-extension ms-toolsai.jupyter
|
|
code --install-extension ms-vscode.cpptools
|
|
code --install-extension llvm-vs-code-extensions.vscode-clangd
|
|
```
|
|
|
|
**Demonstration:** Führen Sie die folgenden Befehle aus:
|
|
|
|
```shell
|
|
git config --get user.name # should print your name
|
|
git config --get user.email # should print your student-email
|
|
code --list-extensions # should list all installed vscode extensions
|
|
```
|
|
|
|
---
|
|
|
|
### B. Kennenlernen der Systemkonfiguration im Labor und Einüben der Labor-Abgabe via TUWEL
|
|
|
|
1. TUWEL im Web-Browser aufrufen und einloggen
|
|
2. Anweisungen der Aufgabe unter [Labor Setup: Abgabe (demo)](https://tuwel.tuwien.ac.at/course/view.php?id=62042#coursecontentcollapse3) folgen
|
|
|
|
**Demonstration:** Die von Ihnen hochgeladene Datei `task.cpp` in TUWEL.
|
|
|
|
---
|
|
|
|
### C. Hausübung 1 "Schnelldurchgang"
|
|
|
|
Schritt-für-Schritt Anleitung des Abgabeprozesses für `exercise1` mit *git*: https://sgit.iue.tuwien.ac.at/360050/git
|
|
|
|
Sie sollen **Aufgabe 2** (Task2) der ersten Hausübung `exercise1` bearbeiten und dabei alle nötigen Befehle um die Hausübungen abzugeben kennenlernen:
|
|
|
|
- Kopieren der Angabe in Ihren persönlichen Bereich auf dem git-Server:
|
|
|
|
- Navigieren Sie zu [https://sgit.iue.tuwien.ac.at/360050/exercise1](https://sgit.iue.tuwien.ac.at/360050/exercise1)
|
|
- Klicken Sie oben rechts auf **Fork** und dann auf **Fork Repository**. Das Repo *exercise1* sollte jetzt in Ihrem persönlichem Bereich verfügbar sein (s. oben rechts *'Profile'*).
|
|
|
|
- Herunterladen der Hausübung 1 vom Git-Server und öffnen in VSCode:
|
|
```shell
|
|
mkdir 360050 # just a recommendation for a directory structure
|
|
cd 360050
|
|
|
|
# NOTE: next command prompts for username/password
|
|
# NOTE: replace eXXXXXXX with your student ID
|
|
# NOTE: --recursive is important, otherwise the 'modules' folder will be empty
|
|
|
|
git clone --recursive https://sgit.iue.tuwien.ac.at/eXXXXXXX/exercise1.git
|
|
cd exercise1
|
|
code .
|
|
|
|
#TODO: check if all files are present, especially inside the 'modules' folder
|
|
```
|
|
|
|
---
|
|
---
|
|
|
|
- Bearbeiten Sie **Aufgabe 2** der Hausübung 1 **(task2.main.cpp)**:
|
|
- Die genaue Beschreibung und Anforderungen finden Sie in **main.ipynb**
|
|
|
|
---
|
|
---
|
|
|
|
- Wenn Sie fertig sind nutzen Sie folgende Befehle um die lokalen Änderungen an der Hausübung (Ihre Lösung) auf den git-Server hochzuladen:
|
|
|
|
```shell
|
|
git status # some files should be marked as modified or new (red)
|
|
git add . # add all files to staging area (green)
|
|
git status # check staging (green)
|
|
git commit -m "task2 done" # apply all changes
|
|
|
|
# NOTE: next command prompts for username/password
|
|
git push
|
|
```
|
|
|
|
- Wenn Sie nachträglich etwas an Ihrer Lösung geändert haben und diese Änderungen auf den Git-Server hochladen wollen, führen Sie folgende Befehle aus:
|
|
|
|
```shell
|
|
git status # modified files are marked (red)
|
|
git add . # add all files to staging area (green)
|
|
git status # check staging (green)
|
|
git commit -m "changes done" # apply all changes
|
|
git push
|
|
```
|
|
|
|
**Demonstration:** Öffnen Sie Ihr Abgabe-Repo auf http://sgit.iue.tuwien.ac.at im Browser und offnen Sie Ihre Loesung in **task2.main.cpp** im Browser.
|