init
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
## source: https://docs.github.com/en/get-started/getting-started-with-git/configuring-git-to-handle-line-endings
|
||||
|
||||
# Set the default behavior, in case people don't have core.autocrlf set.
|
||||
* text=auto
|
||||
|
||||
# Explicitly declare text files you want to always be normalized and converted
|
||||
# to native line endings on checkout.
|
||||
*.h text
|
||||
*.hpp text
|
||||
*.c text
|
||||
*.cpp text
|
||||
*.py text
|
||||
*.ipynb text
|
||||
*.md text
|
||||
*.txt text
|
||||
*.csv text
|
||||
+358
@@ -0,0 +1,358 @@
|
||||
# custom
|
||||
|
||||
build
|
||||
doc
|
||||
.cache
|
||||
.vscode
|
||||
.idea
|
||||
|
||||
# https://github.com/github/gitignore/blob/main/CMake.gitignore
|
||||
|
||||
CMakeLists.txt.user
|
||||
CMakeCache.txt
|
||||
CMakeFiles
|
||||
CMakeScripts
|
||||
Testing
|
||||
Makefile
|
||||
cmake_install.cmake
|
||||
install_manifest.txt
|
||||
compile_commands.json
|
||||
CTestTestfile.cmake
|
||||
_deps
|
||||
|
||||
# ttps://github.com/github/gitignore/blob/main/C.gitignore
|
||||
|
||||
# Prerequisites
|
||||
*.d
|
||||
|
||||
# Object files
|
||||
*.o
|
||||
*.ko
|
||||
*.obj
|
||||
*.elf
|
||||
|
||||
# Linker output
|
||||
*.ilk
|
||||
*.map
|
||||
*.exp
|
||||
|
||||
# Precompiled Headers
|
||||
*.gch
|
||||
*.pch
|
||||
|
||||
# Libraries
|
||||
*.lib
|
||||
*.a
|
||||
*.la
|
||||
*.lo
|
||||
|
||||
# Shared objects (inc. Windows DLLs)
|
||||
*.dll
|
||||
*.so
|
||||
*.so.*
|
||||
*.dylib
|
||||
|
||||
# Executables
|
||||
*.exe
|
||||
*.out
|
||||
*.app
|
||||
*.i*86
|
||||
*.x86_64
|
||||
*.hex
|
||||
|
||||
# Debug files
|
||||
*.dSYM/
|
||||
*.su
|
||||
*.idb
|
||||
*.pdb
|
||||
|
||||
# Kernel Module Compile Results
|
||||
*.mod*
|
||||
*.cmd
|
||||
.tmp_versions/
|
||||
modules.order
|
||||
Module.symvers
|
||||
Mkfile.old
|
||||
dkms.conf
|
||||
|
||||
# https://github.com/github/gitignore/blob/main/C%2B%2B.gitignore
|
||||
|
||||
# Prerequisites
|
||||
*.d
|
||||
|
||||
# Compiled Object files
|
||||
*.slo
|
||||
*.lo
|
||||
*.o
|
||||
*.obj
|
||||
|
||||
# Precompiled Headers
|
||||
*.gch
|
||||
*.pch
|
||||
|
||||
# Compiled Dynamic libraries
|
||||
*.so
|
||||
*.dylib
|
||||
*.dll
|
||||
|
||||
# Fortran module files
|
||||
*.mod
|
||||
*.smod
|
||||
|
||||
# Compiled Static libraries
|
||||
*.lai
|
||||
*.la
|
||||
*.a
|
||||
*.lib
|
||||
|
||||
# Executables
|
||||
*.exe
|
||||
*.out
|
||||
*.app
|
||||
|
||||
# source: https://github.com/github/gitignore/blob/main/Python.gitignore
|
||||
|
||||
# Byte-compiled / optimized / DLL files
|
||||
__pycache__/
|
||||
*.py[cod]
|
||||
*$py.class
|
||||
|
||||
# C extensions
|
||||
*.so
|
||||
|
||||
# Distribution / packaging
|
||||
.Python
|
||||
build/
|
||||
develop-eggs/
|
||||
dist/
|
||||
downloads/
|
||||
eggs/
|
||||
.eggs/
|
||||
lib/
|
||||
lib64/
|
||||
parts/
|
||||
sdist/
|
||||
var/
|
||||
wheels/
|
||||
share/python-wheels/
|
||||
*.egg-info/
|
||||
.installed.cfg
|
||||
*.egg
|
||||
MANIFEST
|
||||
|
||||
# PyInstaller
|
||||
# Usually these files are written by a python script from a template
|
||||
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
||||
*.manifest
|
||||
*.spec
|
||||
|
||||
# Installer logs
|
||||
pip-log.txt
|
||||
pip-delete-this-directory.txt
|
||||
|
||||
# Unit test / coverage reports
|
||||
htmlcov/
|
||||
.tox/
|
||||
.nox/
|
||||
.coverage
|
||||
.coverage.*
|
||||
.cache
|
||||
nosetests.xml
|
||||
coverage.xml
|
||||
*.cover
|
||||
*.py,cover
|
||||
.hypothesis/
|
||||
.pytest_cache/
|
||||
cover/
|
||||
|
||||
# Translations
|
||||
*.mo
|
||||
*.pot
|
||||
|
||||
# Django stuff:
|
||||
*.log
|
||||
local_settings.py
|
||||
db.sqlite3
|
||||
db.sqlite3-journal
|
||||
|
||||
# Flask stuff:
|
||||
instance/
|
||||
.webassets-cache
|
||||
|
||||
# Scrapy stuff:
|
||||
.scrapy
|
||||
|
||||
# Sphinx documentation
|
||||
docs/_build/
|
||||
|
||||
# PyBuilder
|
||||
.pybuilder/
|
||||
target/
|
||||
|
||||
# Jupyter Notebook
|
||||
.ipynb_checkpoints
|
||||
|
||||
# IPython
|
||||
profile_default/
|
||||
ipython_config.py
|
||||
|
||||
# pyenv
|
||||
# For a library or package, you might want to ignore these files since the code is
|
||||
# intended to run in multiple environments; otherwise, check them in:
|
||||
# .python-version
|
||||
|
||||
# pipenv
|
||||
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
|
||||
# However, in case of collaboration, if having platform-specific dependencies or dependencies
|
||||
# having no cross-platform support, pipenv may install dependencies that don't work, or not
|
||||
# install all needed dependencies.
|
||||
#Pipfile.lock
|
||||
|
||||
# poetry
|
||||
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
|
||||
# This is especially recommended for binary packages to ensure reproducibility, and is more
|
||||
# commonly ignored for libraries.
|
||||
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
|
||||
#poetry.lock
|
||||
|
||||
# pdm
|
||||
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
|
||||
#pdm.lock
|
||||
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
|
||||
# in version control.
|
||||
# https://pdm.fming.dev/#use-with-ide
|
||||
.pdm.toml
|
||||
|
||||
# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
|
||||
__pypackages__/
|
||||
|
||||
# Celery stuff
|
||||
celerybeat-schedule
|
||||
celerybeat.pid
|
||||
|
||||
# SageMath parsed files
|
||||
*.sage.py
|
||||
|
||||
# Environments
|
||||
.env
|
||||
.venv
|
||||
env/
|
||||
venv/
|
||||
ENV/
|
||||
env.bak/
|
||||
venv.bak/
|
||||
|
||||
# Spyder project settings
|
||||
.spyderproject
|
||||
.spyproject
|
||||
|
||||
# Rope project settings
|
||||
.ropeproject
|
||||
|
||||
# mkdocs documentation
|
||||
/site
|
||||
|
||||
# mypy
|
||||
.mypy_cache/
|
||||
.dmypy.json
|
||||
dmypy.json
|
||||
|
||||
# Pyre type checker
|
||||
.pyre/
|
||||
|
||||
# pytype static type analyzer
|
||||
.pytype/
|
||||
|
||||
# Cython debug symbols
|
||||
cython_debug/
|
||||
|
||||
# jetbrain IDEs: https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
|
||||
|
||||
# User-specific stuff
|
||||
.idea/**/workspace.xml
|
||||
.idea/**/tasks.xml
|
||||
.idea/**/usage.statistics.xml
|
||||
.idea/**/dictionaries
|
||||
.idea/**/shelf
|
||||
|
||||
# AWS User-specific
|
||||
.idea/**/aws.xml
|
||||
|
||||
# Generated files
|
||||
.idea/**/contentModel.xml
|
||||
|
||||
# Sensitive or high-churn files
|
||||
.idea/**/dataSources/
|
||||
.idea/**/dataSources.ids
|
||||
.idea/**/dataSources.local.xml
|
||||
.idea/**/sqlDataSources.xml
|
||||
.idea/**/dynamic.xml
|
||||
.idea/**/uiDesigner.xml
|
||||
.idea/**/dbnavigator.xml
|
||||
|
||||
# Gradle
|
||||
.idea/**/gradle.xml
|
||||
.idea/**/libraries
|
||||
|
||||
# Gradle and Maven with auto-import
|
||||
# When using Gradle or Maven with auto-import, you should exclude module files,
|
||||
# since they will be recreated, and may cause churn. Uncomment if using
|
||||
# auto-import.
|
||||
# .idea/artifacts
|
||||
# .idea/compiler.xml
|
||||
# .idea/jarRepositories.xml
|
||||
# .idea/modules.xml
|
||||
# .idea/*.iml
|
||||
# .idea/modules
|
||||
# *.iml
|
||||
# *.ipr
|
||||
|
||||
# CMake
|
||||
cmake-build-*/
|
||||
|
||||
# Mongo Explorer plugin
|
||||
.idea/**/mongoSettings.xml
|
||||
|
||||
# File-based project format
|
||||
*.iws
|
||||
|
||||
# IntelliJ
|
||||
out/
|
||||
|
||||
# mpeltonen/sbt-idea plugin
|
||||
.idea_modules/
|
||||
|
||||
# JIRA plugin
|
||||
atlassian-ide-plugin.xml
|
||||
|
||||
# Cursive Clojure plugin
|
||||
.idea/replstate.xml
|
||||
|
||||
# SonarLint plugin
|
||||
.idea/sonarlint/
|
||||
|
||||
# Crashlytics plugin (for Android Studio and IntelliJ)
|
||||
com_crashlytics_export_strings.xml
|
||||
crashlytics.properties
|
||||
crashlytics-build.properties
|
||||
fabric.properties
|
||||
|
||||
# Editor-based Rest Client
|
||||
.idea/httpRequests
|
||||
|
||||
# Android studio 3.1+ serialized cache file
|
||||
.idea/caches/build_file_checksums.ser
|
||||
|
||||
# VSCODE source: https://github.com/github/gitignore/blob/main/Global/VisualStudioCode.gitignore
|
||||
.vscode/*
|
||||
!.vscode/settings.json
|
||||
!.vscode/tasks.json
|
||||
!.vscode/launch.json
|
||||
!.vscode/extensions.json
|
||||
!.vscode/*.code-snippets
|
||||
|
||||
# Local History for Visual Studio Code
|
||||
.history/
|
||||
|
||||
# Built Visual Studio Code Extensions
|
||||
*.vsix
|
||||
+138
@@ -0,0 +1,138 @@
|
||||
# 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.
|
||||
Reference in New Issue
Block a user