Skip to content

Commit 117a7bd

Browse files
committed
chore: initial commit with DVC-E1
0 parents  commit 117a7bd

3 files changed

Lines changed: 129 additions & 0 deletions

File tree

dvc-e1/README.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# DVC-E1 — Versionsverwaltung mit Git
2+
3+
Abgabe zur Einsendeaufgabe DVC-E1 (Softwaretechnik, Kapitel 11).
4+
5+
---
6+
7+
## 1. Repository anlegen
8+
9+
Repository auf GitHub erstellt: `RDBHT/SWT` (public).
10+
11+
## 2. Projekt hochpushen
12+
13+
Initialer Push dieses Repos.
14+
Commit: `<HASH_INIT>`
15+
16+
## 3. Git-Methoden beweisbar angewendet
17+
18+
Alle in der Lerneinheit genannten Operationen wurden ausgeführt. Nachweise über `git log`.
19+
20+
| Befehl | Commit / Nachweis |
21+
|----------|-------------------|
22+
| `add` | `<HASH>` |
23+
| `commit` | `<HASH>` |
24+
| `status` | siehe Workflow-Log |
25+
| `diff` | siehe Workflow-Log |
26+
| `push` | sichtbar in Repo-Historie |
27+
| `pull` | siehe Workflow-Log |
28+
| `mv` | `<HASH>` (Rename `notes.md``notizen.md`) |
29+
| `rm` | `<HASH>` (Entfernen `tmp.txt`) |
30+
| `log` | siehe Workflow-Log |
31+
32+
## 4. Zeitreisen
33+
34+
- `git checkout <HASH_INIT>` — Rückkehr zum Initial-Commit (detached HEAD)
35+
- `git revert <HASH>` — Rückgängigmachen einer Änderung als neuer Commit: `<HASH_REVERT>`
36+
- `git reset --soft HEAD~1` — Demonstration im Workflow
37+
38+
## 5. Branches
39+
40+
Zwei Branches erstellt, gewechselt und gemerged:
41+
42+
- `feature/a` — kleine Änderung A
43+
- `feature/b` — kleine Änderung B
44+
- Merge: `<HASH_MERGE>` (Merge `feature/b` in `main`)
45+
46+
## 6. Pull-Request auf edlich/education
47+
48+
Pull-Request: `#<NUMMER>` — <LINK>
49+
50+
Kleine Änderung in bestehender Datei im Student-Verzeichnis (kein neuer Ordner).
51+
52+
---
53+
54+
**Hinweis:** Diese README dient als Abgabe-Dokument. Hash-Platzhalter werden nach Ausführung der Workflow-Schritte eingetragen.

dvc-e1/git-workflow.sh

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
#!/usr/bin/env bash
2+
# DVC-E1 — Git-Workflow zum manuellen Durcharbeiten.
3+
# Zeile fuer Zeile ausfuehren, dabei die ausgegebenen Commit-Hashes
4+
# in die README eintragen.
5+
6+
set -e
7+
8+
# ---------- 1) Init & Initial-Push ----------
9+
git init
10+
git branch -M main
11+
echo "# SWT — DVC-E1" > README.md # spaeter durch finale README ersetzen
12+
git add README.md notes.md
13+
git commit -m "chore: initial commit"
14+
git remote add origin git@github.com:RDBHT/SWT.git
15+
git push -u origin main
16+
17+
# ---------- 2) status / diff / commit ----------
18+
echo "weitere Zeile" >> notes.md
19+
git status
20+
git diff
21+
git add notes.md
22+
git commit -m "docs: extend notes"
23+
git push
24+
25+
# ---------- 3) mv / rm ----------
26+
git mv notes.md notizen.md
27+
git commit -m "refactor: rename notes -> notizen"
28+
29+
echo "tmp" > tmp.txt
30+
git add tmp.txt
31+
git commit -m "chore: add tmp file"
32+
git rm tmp.txt
33+
git commit -m "chore: remove tmp file"
34+
git push
35+
36+
# ---------- 4) Zeitreisen ----------
37+
git log --oneline
38+
# Rueckkehr in alten Zustand (detached HEAD), dann zurueck:
39+
INIT_HASH=$(git rev-list --max-parents=0 HEAD)
40+
git checkout "$INIT_HASH"
41+
git checkout main
42+
43+
# Revert demonstrieren:
44+
git revert --no-edit HEAD
45+
git push
46+
47+
# ---------- 5) Branches ----------
48+
git checkout -b feature/a
49+
echo "A" >> notizen.md
50+
git commit -am "feat(a): add A"
51+
git push -u origin feature/a
52+
53+
git checkout main
54+
git checkout -b feature/b
55+
echo "B" >> notizen.md
56+
git commit -am "feat(b): add B"
57+
git push -u origin feature/b
58+
59+
git checkout main
60+
git merge --no-ff feature/a -m "merge: feature/a"
61+
git merge --no-ff feature/b -m "merge: feature/b" # ggf. Konflikt loesen
62+
git push
63+
64+
# ---------- 6) Pull-Request auf edlich/education ----------
65+
# Manuell via GitHub-Web-UI:
66+
# 1. https://github.com/edlich/education forken
67+
# 2. Im Fork: eine bestehende Datei im student/-Verzeichnis minimal editieren
68+
# 3. PR erstellen, PR-Nummer + Link in README eintragen
69+
70+
# ---------- Pull / log am Ende ----------
71+
git pull --rebase
72+
git log --oneline --graph --all

dvc-e1/notes.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Notes
2+
3+
Demo-Datei für git add / commit / diff / mv / rm.

0 commit comments

Comments
 (0)