diff --git a/generator/src/main/kotlin/de/kapitel26/gitsamplebuilder/uebungenProgressServer.kt b/generator/src/main/kotlin/de/kapitel26/gitsamplebuilder/uebungenProgressServer.kt index cefe754..789a34d 100644 --- a/generator/src/main/kotlin/de/kapitel26/gitsamplebuilder/uebungenProgressServer.kt +++ b/generator/src/main/kotlin/de/kapitel26/gitsamplebuilder/uebungenProgressServer.kt @@ -167,7 +167,7 @@ fun Route.aufgabenFilesLocalJekyll() { val response = this.getStaticContent( - "markdown-git-uebungen/" + + "markdown-git-uebungen${call.parameters["language_suffix"] ?: ""}/" + (call.parameters.getAll("path")?.joinToString("/") ?: "") ) // Schritt 1 - Navigation in Übungsverzeichnisse diff --git a/generator/src/main/kotlin/impl/AbstractWorkingDir.kt b/generator/src/main/kotlin/impl/AbstractWorkingDir.kt index b863ba9..bc6b133 100644 --- a/generator/src/main/kotlin/impl/AbstractWorkingDir.kt +++ b/generator/src/main/kotlin/impl/AbstractWorkingDir.kt @@ -191,7 +191,6 @@ abstract class AbstractWorkingDir( @Suppress("UNCHECKED_CAST") fun createIntro(title: String, description: String = "", setup: T.() -> Unit = {}) { - solutionCollector.registerAufgabe(title) markdown(("# Übung" en "# Exercise") + " - $title") markdown(description) supressLogging(setup) diff --git a/generator/src/main/kotlin/impl/CollectionOfSamples.kt b/generator/src/main/kotlin/impl/CollectionOfSamples.kt index c980833..a51d460 100644 --- a/generator/src/main/kotlin/impl/CollectionOfSamples.kt +++ b/generator/src/main/kotlin/impl/CollectionOfSamples.kt @@ -24,6 +24,7 @@ class CollectionOfSamples(rootDir: File, options: LogBuilderOptions) : log.nav_order.put("aufgabe-$fullName", aufgabenNamen.size) log.nav_order.put("loesung-$fullName", aufgabenNamen.size) aufgabenNamen.add(fullName) + solutionCollector.registerAufgabe(fullName) createSample("loesungen/$fullName") { inDir(".") { diff --git a/generator/src/main/kotlin/impl/SolutionCollector.kt b/generator/src/main/kotlin/impl/SolutionCollector.kt index 3da0c8a..ba57623 100644 --- a/generator/src/main/kotlin/impl/SolutionCollector.kt +++ b/generator/src/main/kotlin/impl/SolutionCollector.kt @@ -5,8 +5,8 @@ class SolutionCollector { val collectedCommands: MutableList Unit>> = mutableListOf() val aufgabenUndSchritte: MutableList>> = mutableListOf() - fun registerAufgabe(title: String) { - aufgabenUndSchritte.add(title to mutableListOf()) + fun registerAufgabe(id:String) { + aufgabenUndSchritte.add(id to mutableListOf()) } fun registerSchritt(schritt: String) { diff --git a/markdown-git-uebungen-en/aufgabe-commits-erstellen.md b/markdown-git-uebungen-en/aufgabe-commits-erstellen.md index a60383c..7b1ca36 100644 --- a/markdown-git-uebungen-en/aufgabe-commits-erstellen.md +++ b/markdown-git-uebungen-en/aufgabe-commits-erstellen.md @@ -30,13 +30,13 @@ In the `repo` directory, a Git project is waiting to be edited. -

Step 0 - START

+

Step 0 - START

$ cd repo


-

Step 1 - Commit - with Staging

+

Step 1 - Commit - with Staging

Start in directory `git-uebungen/aufgaben/commits-erstellen/repo`. @@ -44,7 +44,7 @@ Edit the file `hallo-welt`, add it to the index with `git add` (staging) and create a commit with these changes. -

Step 2 - Commit - automatic staging

+

Step 2 - Commit - automatic staging

Start in directory `git-uebungen/aufgaben/commits-erstellen/repo`. @@ -52,19 +52,19 @@ Edit the file `hallo-welt` again and create another commit, but this time with `-a`. -

Step 3 - Commit - new file

+

Step 3 - Commit - new file

Start in directory `git-uebungen/aufgaben/commits-erstellen/repo`. Create `new-world` and confirm it with a commit. -

Step 4 - Commit - delete file

+

Step 4 - Commit - delete file

Start in directory `git-uebungen/aufgaben/commits-erstellen/repo`. Delete `hallo-welt` and confirm this with a commit. -

Step 5 - ⭐ Add - recursively add files

+

Step 5 - ⭐ Add - recursively add files

Start in directory `git-uebungen/aufgaben/commits-erstellen/repo`. @@ -72,14 +72,14 @@ Create a file `superneu` and a directory `sub` with a file `auchneu`, add both with *one* add call and then create a commit. -

Step 6 - ⭐ Commit - move/rename file

+

Step 6 - ⭐ Commit - move/rename file

Start in directory `git-uebungen/aufgaben/commits-erstellen/repo`. Rename the file `hello-world` to `renamed-world` and confirm this with a commit. -

Step 7 - ⭐ Rename detection

+

Step 7 - ⭐ Rename detection

Start in directory `git-uebungen/aufgaben/commits-erstellen/repo`. diff --git a/markdown-git-uebungen-en/aufgabe-commits-staging.md b/markdown-git-uebungen-en/aufgabe-commits-staging.md index fea067d..584cb10 100644 --- a/markdown-git-uebungen-en/aufgabe-commits-staging.md +++ b/markdown-git-uebungen-en/aufgabe-commits-staging.md @@ -34,13 +34,13 @@ In the `repo` directory, a Git project is waiting to be edited. -

Step 0 - START

+

Step 0 - START

$ cd repo


-

Step 1 - Staging

+

Step 1 - Staging

Start in directory `git-uebungen/aufgaben/commits-staging/repo`. @@ -51,28 +51,28 @@ Then replace `doof` with `toll`. Show the status and diffs for the workspace and stage. -

Step 2 - Restore - Staging zurücknehmen

+

Step 2 - Restore - Staging zurücknehmen

Start in directory `git-uebungen/aufgaben/commits-staging/repo`. The last change should not be included in the next commit yet, so undo it. -

Step 3 - Restore - Änderung ganz zurücknehmen

+

Step 3 - Restore - Änderung ganz zurücknehmen

Start in directory `git-uebungen/aufgaben/commits-staging/repo`. The changes to `demo` should be completely undone. Show the status and diffs afterwards. -

Step 4 - ⭐ Restore - Älteren Inhalt einer Datei zurückholen

+

Step 4 - ⭐ Restore - Älteren Inhalt einer Datei zurückholen

Start in directory `git-uebungen/aufgaben/commits-staging/repo`. The file `beispiel` was edited three times. Restore the middle state and create a commit. -

Step 5 - ⭐ Restore - Zurückholen älterer Verzeichnisversionen

+

Step 5 - ⭐ Restore - Zurückholen älterer Verzeichnisversionen

Start in directory `git-uebungen/aufgaben/commits-staging/repo`. diff --git a/markdown-git-uebungen-en/aufgabe-intro-commandline.md b/markdown-git-uebungen-en/aufgabe-intro-commandline.md index a5d9007..c9569e3 100644 --- a/markdown-git-uebungen-en/aufgabe-intro-commandline.md +++ b/markdown-git-uebungen-en/aufgabe-intro-commandline.md @@ -48,9 +48,9 @@ the `git` command. [Short intro to the command line](../installation/commandline) -

Step 0 - START

+

Step 0 - START

-

Step 1 - Navigation in exercise directories

+

Step 1 - Navigation in exercise directories

Start in directory `git-uebungen`. @@ -62,13 +62,13 @@ Use tab completion to avoid typing so much. Then navigate back to the parent directory `intro-commandline`. -

Step 2 - Check Git version

+

Step 2 - Check Git version

Start in directory `git-uebungen/aufgaben/intro-commandline`. Print which version of Git is installed. -

Step 3 - Help

+

Step 3 - Help

Start in directory `git-uebungen/aufgaben/intro-commandline`. @@ -78,7 +78,7 @@ Show the help page for the `log` command.
$ cd repo


-

Step 4 - `less` and long outputs

+

Step 4 - `less` and long outputs

Start in directory `git-uebungen/aufgaben/intro-commandline/repo`. @@ -87,7 +87,7 @@ Because this does not fit in a terminal window, the `less` viewer is opened. Close it. Then use `less some-file.txt` to view a file in `less` mode. -

Step 5 - Configure Git

+

Step 5 - Configure Git

Start in directory `git-uebungen/aufgaben/intro-commandline/repo`. @@ -114,7 +114,7 @@ It is recommended to set them for this workshop: $ git config --global init.defaultBranch main -

Step 6 - ⭐ History

+

Step 6 - ⭐ History

Start in directory `git-uebungen/aufgaben/intro-commandline/repo`. @@ -123,7 +123,7 @@ to execute one of the previous commands again. Type `ctrl+r` and then enter `conflict`, to re-run the command to set `merge.conflictStyle`. -

Step 7 - ⭐ Configure Git editor

+

Step 7 - ⭐ Configure Git editor

Start in directory `git-uebungen/aufgaben/intro-commandline/repo`. @@ -131,14 +131,14 @@ Configure an editor for git. [Tips on this](https://git-scm.com/book/en/v2/Appendix-C%3A-Git-Commands-Setup-and-Config).f Then test with `git config -e` to see if it worked. -

Step 8 - ⭐ Working directory

+

Step 8 - ⭐ Working directory

Start in directory `git-uebungen/aufgaben/intro-commandline/repo`. Print out which working directory you are currently in. For Windows users: also test the command with the `-W` option. -

Step 9 - ⭐ Open applications

+

Step 9 - ⭐ Open applications

Start in directory `git-uebungen/aufgaben/intro-commandline/repo`. diff --git a/markdown-git-uebungen-en/aufgabe-intro-hallo-welt.md b/markdown-git-uebungen-en/aufgabe-intro-hallo-welt.md index b6d31a4..0d9eb83 100644 --- a/markdown-git-uebungen-en/aufgabe-intro-hallo-welt.md +++ b/markdown-git-uebungen-en/aufgabe-intro-hallo-welt.md @@ -19,9 +19,9 @@ You will learn what the commands do in detail during the course. * `git log` shows commits. -

Step 0 - START

+

Step 0 - START

-

Step 1 - The first repo

+

Step 1 - The first repo

Start in directory `git-uebungen/aufgaben/intro-hallo-welt`. @@ -34,7 +34,7 @@ Create your first repository with the following commands: $ git commit -m 'Hello World!' $ git log -

Step 2 - ⭐ And another commit

+

Step 2 - ⭐ And another commit

Start in directory `git-uebungen/aufgaben/intro-hallo-welt`. @@ -45,7 +45,7 @@ Then look at the log. $ git commit -am 'Here we go again!' $ git log -

Step 3 - ⭐ Where is the repository

+

Step 3 - ⭐ Where is the repository

Start in directory `git-uebungen/aufgaben/intro-hallo-welt`. diff --git a/markdown-git-uebungen-en/aufgabe-modularisierung-repositorys-zusammenfuehren.md b/markdown-git-uebungen-en/aufgabe-modularisierung-repositorys-zusammenfuehren.md index 089c1f0..231c3a7 100644 --- a/markdown-git-uebungen-en/aufgabe-modularisierung-repositorys-zusammenfuehren.md +++ b/markdown-git-uebungen-en/aufgabe-modularisierung-repositorys-zusammenfuehren.md @@ -33,9 +33,9 @@ Two repositories are already present. -

Step 0 - START

+

Step 0 - START

-

Step 1 - Merge `git subtree`

+

Step 1 - Merge `git subtree`

Start in directory `git-uebungen/aufgaben/modularisierung-repositorys-zusammenfuehren`. @@ -45,7 +45,7 @@ Start in directory `git-uebungen/aufgaben/modularisierung-repositorys-zusammenfu 3. Add `ui.git` in a subdirectory `ui`. 4. Examine the directory structure and commit graph -

Step 2 - Merge with `fetch`, `mv` and `merge`

+

Step 2 - Merge with `fetch`, `mv` and `merge`

Start in directory `git-uebungen/aufgaben/modularisierung-repositorys-zusammenfuehren`. diff --git a/markdown-git-uebungen-en/aufgabe-modularisierung-submodules.md b/markdown-git-uebungen-en/aufgabe-modularisierung-submodules.md index 14e3b2f..f74217c 100644 --- a/markdown-git-uebungen-en/aufgabe-modularisierung-submodules.md +++ b/markdown-git-uebungen-en/aufgabe-modularisierung-submodules.md @@ -53,13 +53,13 @@ application/ -

Step 0 - START

+

Step 0 - START

$ cd application


-

Step 1 - Integrating modules as submodules

+

Step 1 - Integrating modules as submodules

Start in directory `git-uebungen/aufgaben/modularisierung-submodules/application`. @@ -71,7 +71,7 @@ Then examine the resulting directory structure.
application $ cd ..


-

Step 2 - Adopting changes from a module

+

Step 2 - Adopting changes from a module

Start in directory `git-uebungen/aufgaben/modularisierung-submodules`. @@ -80,7 +80,7 @@ Look at the resulting commit (`show --stat`) Go to the `application/backend` repo and fetch the changes using `pull`. Look at the transferred commit. -

Step 3 - Transferring changes to a module

+

Step 3 - Transferring changes to a module

Start in directory `git-uebungen/aufgaben/modularisierung-submodules`. @@ -88,7 +88,7 @@ Go to `subtrees/frontend`, change `main.ts` and commit. Transfer the change to `frontend.git` using `push`. Look at the transferred commit in `frontend.git`. -

Step 4 - Cloning the parent repo

+

Step 4 - Cloning the parent repo

Start in directory `git-uebungen/aufgaben/modularisierung-submodules`. diff --git a/markdown-git-uebungen-en/aufgabe-modularisierung-subtrees.md b/markdown-git-uebungen-en/aufgabe-modularisierung-subtrees.md index 92c8aa0..98d62e5 100644 --- a/markdown-git-uebungen-en/aufgabe-modularisierung-subtrees.md +++ b/markdown-git-uebungen-en/aufgabe-modularisierung-subtrees.md @@ -50,13 +50,13 @@ application/ ``` -

Step 0 - START

+

Step 0 - START

$ cd application


-

Step 1 - Integrating modules as subtrees

+

Step 1 - Integrating modules as subtrees

Start in directory `git-uebungen/aufgaben/modularisierung-subtrees/application`. @@ -68,7 +68,7 @@ Then examine the resulting directory structure.
application $ cd ..


-

Step 2 - Adopting changes from a module

+

Step 2 - Adopting changes from a module

Start in directory `git-uebungen/aufgaben/modularisierung-subtrees`. @@ -77,7 +77,7 @@ Look at the resulting commit (`show --stat`) Go to the `application` repo and fetch the changes using `subtree pull`. Look at the transferred commit. -

Step 3 - Transferring changes to a module

+

Step 3 - Transferring changes to a module

Start in directory `git-uebungen/aufgaben/modularisierung-subtrees`. @@ -85,7 +85,7 @@ Go to `application`, change `frontend/main.ts` and commit. Transfer the change to `frontend.git` using `subtree push`. Look at the transferred commit in `frontend.git`. -

Step 4 - Cloning the parent repo

+

Step 4 - Cloning the parent repo

Start in directory `git-uebungen/aufgaben/modularisierung-subtrees`. diff --git a/markdown-git-uebungen-en/aufgabe-repository-klonen.md b/markdown-git-uebungen-en/aufgabe-repository-klonen.md index e8fc630..f8c4b2f 100644 --- a/markdown-git-uebungen-en/aufgabe-repository-klonen.md +++ b/markdown-git-uebungen-en/aufgabe-repository-klonen.md @@ -25,15 +25,15 @@ It contains two commits. - `myfirstrepo/` Existing repository. -

Step 0 - START

+

Step 0 - START

-

Step 1 - Perform clone

+

Step 1 - Perform clone

Start in directory `git-uebungen/aufgaben/repository-klonen`. Create a clone of `myfirstrepo` named `myfirstclone`. -

Step 2 - Examine clone

+

Step 2 - Examine clone

Start in directory `git-uebungen/aufgaben/repository-klonen`. @@ -43,7 +43,7 @@ show the origin of the clone `myfirstclone`. from which it was cloned. Then show the status. -

Step 3 - Work in the clone

+

Step 3 - Work in the clone

Start in directory `git-uebungen/aufgaben/repository-klonen`. diff --git a/markdown-git-uebungen-en/aufgabe-repository-log.md b/markdown-git-uebungen-en/aufgabe-repository-log.md index 2866d7a..7c37935 100644 --- a/markdown-git-uebungen-en/aufgabe-repository-log.md +++ b/markdown-git-uebungen-en/aufgabe-repository-log.md @@ -36,13 +36,13 @@ In the `repo` directory, a Git project is waiting to be examined. -

Step 0 - START

+

Step 0 - START

$ cd repo


-

Step 1 - Directory structure

+

Step 1 - Directory structure

Start in directory `git-uebungen/aufgaben/repository-log/repo`. @@ -50,28 +50,28 @@ Examine the project directory. What files are there in the workspace? What directories? Where is the repository? -

Step 2 - View commits

+

Step 2 - View commits

Start in directory `git-uebungen/aufgaben/repository-log/repo`. Look at the commits. Pay attention to the displayed branches and tags. -

Step 3 - Examine head commit

+

Step 3 - Examine head commit

Start in directory `git-uebungen/aufgaben/repository-log/repo`. Show details about the current version that is checked out in the workspace. -

Step 4 - Examine past commits

+

Step 4 - Examine past commits

Start in directory `git-uebungen/aufgaben/repository-log/repo`. Show details for Release 1.0, and then for the predecessor version of Release 1.0 -

Step 5 - ⭐ Examine contents of past versions

+

Step 5 - ⭐ Examine contents of past versions

Start in directory `git-uebungen/aufgaben/repository-log/repo`. @@ -80,7 +80,7 @@ existed in the previous commit. Output the content of the file `bar` as it was in the previous commit. -

Step 6 - ⭐ View commits: file statistics

+

Step 6 - ⭐ View commits: file statistics

Start in directory `git-uebungen/aufgaben/repository-log/repo`. @@ -88,7 +88,7 @@ Look at the commits. Have the statistics displayed, i.e. how many lines were changed in which file. -

Step 7 - ⭐ Determine origin of lines

+

Step 7 - ⭐ Determine origin of lines

Start in directory `git-uebungen/aufgaben/repository-log/repo`. diff --git a/markdown-git-uebungen-en/aufgabe-repository-sparse-checkout.md b/markdown-git-uebungen-en/aufgabe-repository-sparse-checkout.md index b1f0b54..d3a9a3a 100644 --- a/markdown-git-uebungen-en/aufgabe-repository-sparse-checkout.md +++ b/markdown-git-uebungen-en/aufgabe-repository-sparse-checkout.md @@ -29,16 +29,16 @@ It contains files at the top level and in two subdirectories. - `repo/` Existing repository. -

Step 0 - START

+

Step 0 - START

-

Step 1 - Perform sparse clone

+

Step 1 - Perform sparse clone

Start in directory `git-uebungen/aufgaben/repository-sparse-checkout`. Create a sparse clone of `repo` named `myrepo`, verify that only top-level files have been fetched into the workspace. -

Step 2 - Add directory

+

Step 2 - Add directory

Start in directory `git-uebungen/aufgaben/repository-sparse-checkout`. @@ -46,14 +46,14 @@ Add the directory `component-a`. Check the new configuration. Validate that `component-a` is now present. -

Step 3 - Disable sparse checkout

+

Step 3 - Disable sparse checkout

Start in directory `git-uebungen/aufgaben/repository-sparse-checkout`. | Disable sparse-checkout and perform a checkout again. | Validate that all files are now present. -

Step 4 - Clone and checkout

+

Step 4 - Clone and checkout

Start in directory `git-uebungen/aufgaben/repository-sparse-checkout`. diff --git a/markdown-git-uebungen-en/aufgabe-repository-untersuchen.md b/markdown-git-uebungen-en/aufgabe-repository-untersuchen.md index 1b4d1ae..04c1c25 100644 --- a/markdown-git-uebungen-en/aufgabe-repository-untersuchen.md +++ b/markdown-git-uebungen-en/aufgabe-repository-untersuchen.md @@ -30,20 +30,20 @@ In the `repo` directory, a Git project is waiting to be examined. -

Step 0 - START

+

Step 0 - START

$ cd repo


-

Step 1 - Show branches

+

Step 1 - Show branches

Start in directory `git-uebungen/aufgaben/repository-untersuchen/repo`. Show which branches exist. Now show the commit graph across all branches. -

Step 2 - Switch branch

+

Step 2 - Switch branch

Start in directory `git-uebungen/aufgaben/repository-untersuchen/repo`. @@ -51,13 +51,13 @@ Switch to the `feature-a` branch. Look at the content of the `bar` file in the `foo` directory. Switch back to `main`. -

Step 3 - Show tags

+

Step 3 - Show tags

Start in directory `git-uebungen/aufgaben/repository-untersuchen/repo`. Show all tags. -

Step 4 - ⭐ Investigate contents of past versions

+

Step 4 - ⭐ Investigate contents of past versions

Start in directory `git-uebungen/aufgaben/repository-untersuchen/repo`. @@ -67,7 +67,7 @@ Switch to the previous commit and examine what the workspace looks like then. Then switch back to `main`. -

Step 5 - ⭐ Restore old state of a single file.

+

Step 5 - ⭐ Restore old state of a single file.

Start in directory `git-uebungen/aufgaben/repository-untersuchen/repo`. diff --git a/markdown-git-uebungen-en/aufgabe-weihnachten-gitmas.md b/markdown-git-uebungen-en/aufgabe-weihnachten-gitmas.md index ec89782..d914075 100644 --- a/markdown-git-uebungen-en/aufgabe-weihnachten-gitmas.md +++ b/markdown-git-uebungen-en/aufgabe-weihnachten-gitmas.md @@ -21,9 +21,9 @@ Let your creativity run wild, or follow these **tips:** * If you can script, e.g. with Bash or Python: ˋforˋ loops are useful. -

Step 0 - START

+

Step 0 - START

-

Step 1 - And now a Christmas tree

+

Step 1 - And now a Christmas tree

Start in directory `git-uebungen/aufgaben/weihnachten-gitmas`. diff --git a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-branching-fortgeschritten.md b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-branching-fortgeschritten.md index 3f93461..bc85336 100644 --- a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-branching-fortgeschritten.md +++ b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-branching-fortgeschritten.md @@ -27,13 +27,13 @@ nav_order: 999 ## Initial situation -

Step 0 - START

+

Step 0 - START

$ cd repo


-

Step 1 - Create branch

+

Step 1 - Create branch

Start in directory `git-uebungen/aufgaben/zusammenarbeit-branching-fortgeschritten/repo`. @@ -42,14 +42,14 @@ and create a commit. Then switch back to `main` and edit `bar` there. Show the commit graph. -

Step 2 - Merge branch

+

Step 2 - Merge branch

Start in directory `git-uebungen/aufgaben/zusammenarbeit-branching-fortgeschritten/repo`. Merge `feature-a` into `main` and show the commit graph. -

Step 3 - ⭐ Analyze merge

+

Step 3 - ⭐ Analyze merge

Start in directory `git-uebungen/aufgaben/zusammenarbeit-branching-fortgeschritten/repo`. @@ -57,7 +57,7 @@ Show which commits from `main` were added in the merge. Show which commits from `feature-a` were added in the merge. Also show the changes (diffs) for both sides. -

Step 4 - ⭐ Analyze merge

+

Step 4 - ⭐ Analyze merge

Start in directory `git-uebungen/aufgaben/zusammenarbeit-branching-fortgeschritten/repo`. @@ -65,7 +65,7 @@ Show which commits from `main` were added in the merge. Show which commits from `feature-a` were added in the merge. Also show the changes (diffs) for both sides. -

Step 5 - Examine remote branches

+

Step 5 - Examine remote branches

Start in directory `git-uebungen/aufgaben/zusammenarbeit-branching-fortgeschritten/repo`. diff --git a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-branching.md b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-branching.md index 6aceab4..64e4c7f 100644 --- a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-branching.md +++ b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-branching.md @@ -27,13 +27,13 @@ nav_order: 999 ## Initial situation -

Step 0 - START

+

Step 0 - START

$ cd repo


-

Step 1 - Create branch

+

Step 1 - Create branch

Start in directory `git-uebungen/aufgaben/zusammenarbeit-branching/repo`. @@ -42,7 +42,7 @@ and create a commit. Then switch back to `main` and edit `bar` there. Show the commit graph. -

Step 2 - Merge branch

+

Step 2 - Merge branch

Start in directory `git-uebungen/aufgaben/zusammenarbeit-branching/repo`. diff --git a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-integration-von-aenderungen.md b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-integration-von-aenderungen.md index b1d25dd..b074906 100644 --- a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-integration-von-aenderungen.md +++ b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-integration-von-aenderungen.md @@ -53,13 +53,13 @@ But Anja has also continued to work in parallel. Integrate the new changes from Anja. -

Step 0 - START

+

Step 0 - START

$ cd fast-forward


-

Step 1 - Fast-forward on pull

+

Step 1 - Fast-forward on pull

Start in directory `git-uebungen/aufgaben/zusammenarbeit-integration-von-aenderungen/fast-forward`. @@ -78,7 +78,7 @@ Show the status and the commit graph.
$ cd no-ff


-

Step 2 - Force merge on pull

+

Step 2 - Force merge on pull

Start in directory `git-uebungen/aufgaben/zusammenarbeit-integration-von-aenderungen/no-ff`. @@ -97,7 +97,7 @@ Show the status and the commit graph.
$ cd changes-in-different-files


-

Step 3 - Integration with changes in different files

+

Step 3 - Integration with changes in different files

Start in directory `git-uebungen/aufgaben/zusammenarbeit-integration-von-aenderungen/changes-in-different-files`. @@ -122,7 +122,7 @@ Start in directory `git-uebungen/aufgaben/zusammenarbeit-integration-von-aenderu
$ cd changes-in-same-files


-

Step 4 - Integration with changes in the same file

+

Step 4 - Integration with changes in the same file

Start in directory `git-uebungen/aufgaben/zusammenarbeit-integration-von-aenderungen/changes-in-same-files`. diff --git a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-push-fetch-pull.md b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-push-fetch-pull.md index a6ee7c9..70209b8 100644 --- a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-push-fetch-pull.md +++ b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-push-fetch-pull.md @@ -19,20 +19,20 @@ nav_order: 999 ## Setup -

Step 0 - START

+

Step 0 - START

$ cd mein-klon


-

Step 1 - Fetch changes

+

Step 1 - Fetch changes

Start in directory `git-uebungen/aufgaben/zusammenarbeit-push-fetch-pull/mein-klon`. Fetch the two new commits from the `origin` repository without changing the local `main`. -

Step 2 - Examine changes

+

Step 2 - Examine changes

Start in directory `git-uebungen/aufgaben/zusammenarbeit-push-fetch-pull/mein-klon`. @@ -41,7 +41,7 @@ and then examine which commits are present in the `main` of the `origin` repository, which have not yet been integrated into the local `main`. -

Step 3 - Integrate changes

+

Step 3 - Integrate changes

Start in directory `git-uebungen/aufgaben/zusammenarbeit-push-fetch-pull/mein-klon`. diff --git a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-push-rejected.md b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-push-rejected.md index 8bbbd70..629e5eb 100644 --- a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-push-rejected.md +++ b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-push-rejected.md @@ -55,26 +55,26 @@ you will experience a *Push Reject*. - `anjas-apollo/` Anja works here. - `my-apollo/` **You work here.** -

Step 0 - START

+

Step 0 - START

$ cd my-apollo


-

Step 1 - Create local commit(s)

+

Step 1 - Create local commit(s)

Start in directory `git-uebungen/aufgaben/zusammenarbeit-push-rejected/my-apollo`. Edit the file `frontend.java` and create (at least) one commit with the changes. Then check with `git status` if the workspace is clean. -

Step 2 - Try to push

+

Step 2 - Try to push

Start in directory `git-uebungen/aufgaben/zusammenarbeit-push-rejected/my-apollo`. Now try to push your changes. -

Step 3 - (optional) Analyze problem

+

Step 3 - (optional) Analyze problem

Start in directory `git-uebungen/aufgaben/zusammenarbeit-push-rejected/my-apollo`. @@ -85,13 +85,13 @@ and let *Anja's* changes be shown to you. * What are the differences between your and Anja's version (symmetrical `diff`)? * What changes did Anja make (asymmetrical `diff`)? -

Step 4 - Integrate foreign changes

+

Step 4 - Integrate foreign changes

Start in directory `git-uebungen/aufgaben/zusammenarbeit-push-rejected/my-apollo`. Integrate the changes with pull and then look at the commit graph. -

Step 5 - Push again

+

Step 5 - Push again

Start in directory `git-uebungen/aufgaben/zusammenarbeit-push-rejected/my-apollo`. diff --git a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-rebasing.md b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-rebasing.md index 0708bb8..2d24bdc 100644 --- a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-rebasing.md +++ b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-rebasing.md @@ -23,13 +23,13 @@ to integrate changes. ## Initial situation -

Step 0 - START

+

Step 0 - START

$ cd repo


-

Step 1 - Update feature branch via rebase.

+

Step 1 - Update feature branch via rebase.

Start in directory `git-uebungen/aufgaben/zusammenarbeit-rebasing/repo`. diff --git a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-reverting.md b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-reverting.md index f5989f9..cdeae34 100644 --- a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-reverting.md +++ b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-reverting.md @@ -35,13 +35,13 @@ The merge commit is tagged with `feature-merge`. Both changes are to be undone. -

Step 0 - START

+

Step 0 - START

$ cd repo


-

Step 1 - Undo a single commit.

+

Step 1 - Undo a single commit.

Start in directory `git-uebungen/aufgaben/zusammenarbeit-reverting/repo`. @@ -49,7 +49,7 @@ In the history, the file `README.md` was renamed to `liesmich`. Undo this change. Tip: The commit is tagged as `umbenennung`. -

Step 2 - Undo merge commit.

+

Step 2 - Undo merge commit.

Start in directory `git-uebungen/aufgaben/zusammenarbeit-reverting/repo`. @@ -57,7 +57,7 @@ In the history, a feature branch was integrated via merge.file . Undo this chang Tip: The merge commit is tagged as `feature-merge`. Tip: The success can be recognized by the disappearance of the file `from-feature`. -

Step 3 - Feature branch broken!?

+

Step 3 - Feature branch broken!?

Start in directory `git-uebungen/aufgaben/zusammenarbeit-reverting/repo`. @@ -71,7 +71,7 @@ Try to merge it again. Examine the error message and the commit graph. Tip: The failed merge can be aborted with `git merge --abort`. -

Step 4 - Undo merge revert again.

+

Step 4 - Undo merge revert again.

Start in directory `git-uebungen/aufgaben/zusammenarbeit-reverting/repo`. diff --git a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-tags.md b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-tags.md index 608c8ed..ad7fe78 100644 --- a/markdown-git-uebungen-en/aufgabe-zusammenarbeit-tags.md +++ b/markdown-git-uebungen-en/aufgabe-zusammenarbeit-tags.md @@ -31,13 +31,13 @@ nav_order: 999 ## Setup -

Step 0 - START

+

Step 0 - START

$ cd mein-klon


-

Step 1 - Create tags

+

Step 1 - Create tags

Start in directory `git-uebungen/aufgaben/zusammenarbeit-tags/mein-klon`. @@ -45,13 +45,13 @@ Create a simple tag `simple1` on `HEAD` and an annotated tag `annotated1` on `HEAD~1`. First look at the log and then at both tags individually (`git show an`). -

Step 2 - Fetch tags

+

Step 2 - Fetch tags

Start in directory `git-uebungen/aufgaben/zusammenarbeit-tags/mein-klon`. Simply by pull. -

Step 3 - Push tags

+

Step 3 - Push tags

Start in directory `git-uebungen/aufgaben/zusammenarbeit-tags/mein-klon`. @@ -59,7 +59,7 @@ A simple `git push` does not transfer tags. First, specifically transfer the tag `simple1` with a push and then all other tags with another push -

Step 4 - Manipulate

+

Step 4 - Manipulate

Start in directory `git-uebungen/aufgaben/zusammenarbeit-tags/mein-klon`. diff --git a/markdown-git-uebungen/aufgabe-commits-erstellen.md b/markdown-git-uebungen/aufgabe-commits-erstellen.md index 574dfac..61b2a9a 100644 --- a/markdown-git-uebungen/aufgabe-commits-erstellen.md +++ b/markdown-git-uebungen/aufgabe-commits-erstellen.md @@ -30,13 +30,13 @@ Im Verzeichnis `repo` wartet ein Git-Projekt darauf, bearbeitet zu werden. -

Schritt 0 - START

+

Schritt 0 - START

$ cd repo


-

Schritt 1 - Commit - mit Staging

+

Schritt 1 - Commit - mit Staging

Starte im Verzeichnis `git-uebungen/aufgaben/commits-erstellen/repo`. @@ -44,7 +44,7 @@ Bearbeite die Datei `hallo-welt`, füge sie mit `git add` zum Index hinzu (Staging) und erstelle ein Commit mit diesen Änderungen. -

Schritt 2 - Commit - automatisches Staging

+

Schritt 2 - Commit - automatisches Staging

Starte im Verzeichnis `git-uebungen/aufgaben/commits-erstellen/repo`. @@ -52,19 +52,19 @@ Bearbeite die Datei `hallo-welt` erneut und erstelle wieder ein Commit, dieses mal mal aber mit `-a`. -

Schritt 3 - Commit - neue Datei

+

Schritt 3 - Commit - neue Datei

Starte im Verzeichnis `git-uebungen/aufgaben/commits-erstellen/repo`. Erstelle `new-world` und bestätige sie mit einem Commit. -

Schritt 4 - Commit - Datei löschen

+

Schritt 4 - Commit - Datei löschen

Starte im Verzeichnis `git-uebungen/aufgaben/commits-erstellen/repo`. Lösche `hallo-welt` und bestätige dies per Commit. -

Schritt 5 - ⭐ Add - Dateien rekursiv hinzufügen

+

Schritt 5 - ⭐ Add - Dateien rekursiv hinzufügen

Starte im Verzeichnis `git-uebungen/aufgaben/commits-erstellen/repo`. @@ -72,14 +72,14 @@ Lege eine Datei `superneu` und eine Verzeichnis `sub`mit einer Datei `auchneu` an füge beide mit *einem* Add-Aufruf hinzu und erstelle dann ein Commit. -

Schritt 6 - ⭐ Commit - Datei verschieben/umbenennen

+

Schritt 6 - ⭐ Commit - Datei verschieben/umbenennen

Starte im Verzeichnis `git-uebungen/aufgaben/commits-erstellen/repo`. Benenne die Datei `hello-world` in `renamed-world` um und bestätige dies durch ein Commit. -

Schritt 7 - ⭐ Rename detection

+

Schritt 7 - ⭐ Rename detection

Starte im Verzeichnis `git-uebungen/aufgaben/commits-erstellen/repo`. diff --git a/markdown-git-uebungen/aufgabe-commits-staging.md b/markdown-git-uebungen/aufgabe-commits-staging.md index 844723c..09b4305 100644 --- a/markdown-git-uebungen/aufgabe-commits-staging.md +++ b/markdown-git-uebungen/aufgabe-commits-staging.md @@ -34,13 +34,13 @@ Im Verzeichnis `repo` wartet ein Git-Projekt darauf, bearbeitet zu werden. -

Schritt 0 - START

+

Schritt 0 - START

$ cd repo


-

Schritt 1 - Staging

+

Schritt 1 - Staging

Starte im Verzeichnis `git-uebungen/aufgaben/commits-staging/repo`. @@ -51,28 +51,28 @@ Ersetze dann `doof` durch `toll`. Lasse dir den Status und die Diffs für Workspace und Stage zeigen. -

Schritt 2 - Restore - Staging zurücknehmen

+

Schritt 2 - Restore - Staging zurücknehmen

Starte im Verzeichnis `git-uebungen/aufgaben/commits-staging/repo`. Die letzte Änderung soll doch noch nicht in das nächste Commit übernommen werden, nehme sie zurück. -

Schritt 3 - Restore - Änderung ganz zurücknehmen

+

Schritt 3 - Restore - Änderung ganz zurücknehmen

Starte im Verzeichnis `git-uebungen/aufgaben/commits-staging/repo`. Die Änderungen an `demo` sollen ganz zurückgenommen werden. Lasse Dir nachher Status und Diffs anzeigen. -

Schritt 4 - ⭐ Restore - Älteren Inhalt einer Datei zurückholen

+

Schritt 4 - ⭐ Restore - Älteren Inhalt einer Datei zurückholen

Starte im Verzeichnis `git-uebungen/aufgaben/commits-staging/repo`. Die Datei `beispiel` wurde dreimal bearbeitet. Hole den mittleren Stand zurück und erstelle ein Commit. -

Schritt 5 - ⭐ Restore - Zurückholen älterer Verzeichnisversionen

+

Schritt 5 - ⭐ Restore - Zurückholen älterer Verzeichnisversionen

Starte im Verzeichnis `git-uebungen/aufgaben/commits-staging/repo`. diff --git a/markdown-git-uebungen/aufgabe-intro-commandline.md b/markdown-git-uebungen/aufgabe-intro-commandline.md index b80a99f..8aa2b96 100644 --- a/markdown-git-uebungen/aufgabe-intro-commandline.md +++ b/markdown-git-uebungen/aufgabe-intro-commandline.md @@ -48,9 +48,9 @@ das `git`-Kommando kennenzulernen. [Kurze Intro zur Kommandozeile](../installation/kommandozeile) -

Schritt 0 - START

+

Schritt 0 - START

-

Schritt 1 - Navigation in Übungsverzeichnisse

+

Schritt 1 - Navigation in Übungsverzeichnisse

Starte im Verzeichnis `git-uebungen`. @@ -62,13 +62,13 @@ Nutze die Tab-Completion, um nicht so viel tippen zu müssen. Navigiere dann wieder zurück ins übergeordnete Verzeichnis `intro-commandline`. -

Schritt 2 - Git-Version prüfen

+

Schritt 2 - Git-Version prüfen

Starte im Verzeichnis `git-uebungen/aufgaben/intro-commandline`. Gib aus, welche Version von Git installiert ist. -

Schritt 3 - Hilfe

+

Schritt 3 - Hilfe

Starte im Verzeichnis `git-uebungen/aufgaben/intro-commandline`. @@ -78,7 +78,7 @@ Zeige die Hilfeseite zum `log`-Befehl an.
$ cd repo


-

Schritt 4 - `less` und lange Ausgaben

+

Schritt 4 - `less` und lange Ausgaben

Starte im Verzeichnis `git-uebungen/aufgaben/intro-commandline/repo`. @@ -87,7 +87,7 @@ Weil diese nicht in ein Terminalfenster passt, wird der `less`-Viewer geöffnet. Schliessen sie ihn. Nutzen sie dann `less some-file.txt` um eine Datei im `less`-Modus anzusehen. -

Schritt 5 - Git konfigurieren

+

Schritt 5 - Git konfigurieren

Starte im Verzeichnis `git-uebungen/aufgaben/intro-commandline/repo`. @@ -114,7 +114,7 @@ Es ist empfehlenswert sie für diesen Workshop setzen: $ git config --global init.defaultBranch main -

Schritt 6 - ⭐ Historie

+

Schritt 6 - ⭐ Historie

Starte im Verzeichnis `git-uebungen/aufgaben/intro-commandline/repo`. @@ -123,7 +123,7 @@ um einen der vorigen Befehle erneut auszuführen. Tippen sie `strg+r` und geben sie dann `conflict`ein, um den Befehl zum Setzen von `merge.conflictStyle` erneut auszuführen. -

Schritt 7 - ⭐ Git-Editor konfigurieren

+

Schritt 7 - ⭐ Git-Editor konfigurieren

Starte im Verzeichnis `git-uebungen/aufgaben/intro-commandline/repo`. @@ -131,14 +131,14 @@ Konfigurieren Sie einen Editor für git. [Tipps dazu](https://git-scm.com/book/en/v2/Appendix-C%3A-Git-Commands-Setup-and-Config).f Testen Sie dann mit `git config -e`, ob es geklappt hat. -

Schritt 8 - ⭐ Arbeitsverzeichnis

+

Schritt 8 - ⭐ Arbeitsverzeichnis

Starte im Verzeichnis `git-uebungen/aufgaben/intro-commandline/repo`. Geben Sie aus, in welchem Arbeitzverzeichnis Sie sich gerade befinden. Für Windows-User: Testen sie den Befehl auch mit der Option `-W`. -

Schritt 9 - ⭐ Anwendungen öfnen

+

Schritt 9 - ⭐ Anwendungen öfnen

Starte im Verzeichnis `git-uebungen/aufgaben/intro-commandline/repo`. diff --git a/markdown-git-uebungen/aufgabe-intro-hallo-welt.md b/markdown-git-uebungen/aufgabe-intro-hallo-welt.md index a95349b..51ea03f 100644 --- a/markdown-git-uebungen/aufgabe-intro-hallo-welt.md +++ b/markdown-git-uebungen/aufgabe-intro-hallo-welt.md @@ -21,9 +21,9 @@ Was die Kommandos genau tun, erfahren Sie im Verlauf des Seminars. * `git log` zeigt Commits an. -

Schritt 0 - START

+

Schritt 0 - START

-

Schritt 1 - Das erste Repo

+

Schritt 1 - Das erste Repo

Starte im Verzeichnis `git-uebungen/aufgaben/intro-hallo-welt`. @@ -36,7 +36,7 @@ Erstellen sie ihr erstes Repository mit den folgenden Befehlen: $ git commit -m 'Hallo Welt!' $ git log -

Schritt 2 - ⭐ Und noch ein Commit

+

Schritt 2 - ⭐ Und noch ein Commit

Starte im Verzeichnis `git-uebungen/aufgaben/intro-hallo-welt`. @@ -47,7 +47,7 @@ Schauen Sie dann das log an. $ git commit -am 'Es geht weiter!' $ git log -

Schritt 3 - ⭐ Wo liegt das Repository

+

Schritt 3 - ⭐ Wo liegt das Repository

Starte im Verzeichnis `git-uebungen/aufgaben/intro-hallo-welt`. diff --git a/markdown-git-uebungen/aufgabe-modularisierung-repositorys-zusammenfuehren.md b/markdown-git-uebungen/aufgabe-modularisierung-repositorys-zusammenfuehren.md index 72cf2a3..05794da 100644 --- a/markdown-git-uebungen/aufgabe-modularisierung-repositorys-zusammenfuehren.md +++ b/markdown-git-uebungen/aufgabe-modularisierung-repositorys-zusammenfuehren.md @@ -33,9 +33,9 @@ Zwei Repositorys sind bereits vorhanden. -

Schritt 0 - START

+

Schritt 0 - START

-

Schritt 1 - Zusammenführen `git subtree`

+

Schritt 1 - Zusammenführen `git subtree`

Starte im Verzeichnis `git-uebungen/aufgaben/modularisierung-repositorys-zusammenfuehren`. @@ -45,7 +45,7 @@ Starte im Verzeichnis `git-uebungen/aufgaben/modularisierung-repositorys-zusamme 3. Füge `ui.git` in einem Unterverzeichnis `ui` hinzu. 4. Untersuche Verzeichnissstruktur und Commit-Graphen -

Schritt 2 - Zusammenführen mit `fetch`, `mv` und `merge`

+

Schritt 2 - Zusammenführen mit `fetch`, `mv` und `merge`

Starte im Verzeichnis `git-uebungen/aufgaben/modularisierung-repositorys-zusammenfuehren`. diff --git a/markdown-git-uebungen/aufgabe-modularisierung-submodules.md b/markdown-git-uebungen/aufgabe-modularisierung-submodules.md index bff1ca5..dfcef88 100644 --- a/markdown-git-uebungen/aufgabe-modularisierung-submodules.md +++ b/markdown-git-uebungen/aufgabe-modularisierung-submodules.md @@ -53,13 +53,13 @@ application/ -

Schritt 0 - START

+

Schritt 0 - START

$ cd application


-

Schritt 1 - Module als Submodule einbinden

+

Schritt 1 - Module als Submodule einbinden

Starte im Verzeichnis `git-uebungen/aufgaben/modularisierung-submodules/application`. @@ -71,7 +71,7 @@ Untersuche dann die entstandene Verzeichnisstruktur.
application $ cd ..


-

Schritt 2 - Änderung aus einem Modul übernehmen

+

Schritt 2 - Änderung aus einem Modul übernehmen

Starte im Verzeichnis `git-uebungen/aufgaben/modularisierung-submodules`. @@ -80,7 +80,7 @@ Sie Dir das entstandene Commit an (`show --stat`) Gehe in das Repo `application/backend` und hole die Änderungen per `pull` ab. Sieh Dir das übertragene Commit an. -

Schritt 3 - Änderung in ein Modul übertragen

+

Schritt 3 - Änderung in ein Modul übertragen

Starte im Verzeichnis `git-uebungen/aufgaben/modularisierung-submodules`. @@ -88,7 +88,7 @@ Gehe in `subtrees/frontend` ändere `main.ts` und committe. Übertrage die Änderung per `push` nach `frontend.git`. Sieh Dir das übertragene Commit in `frontend.git` an. -

Schritt 4 - Übergeordnetes Repo klonen

+

Schritt 4 - Übergeordnetes Repo klonen

Starte im Verzeichnis `git-uebungen/aufgaben/modularisierung-submodules`. diff --git a/markdown-git-uebungen/aufgabe-modularisierung-subtrees.md b/markdown-git-uebungen/aufgabe-modularisierung-subtrees.md index 4a68daf..29bfca6 100644 --- a/markdown-git-uebungen/aufgabe-modularisierung-subtrees.md +++ b/markdown-git-uebungen/aufgabe-modularisierung-subtrees.md @@ -50,13 +50,13 @@ application/ ``` -

Schritt 0 - START

+

Schritt 0 - START

$ cd application


-

Schritt 1 - Module als Subtree einbinden

+

Schritt 1 - Module als Subtree einbinden

Starte im Verzeichnis `git-uebungen/aufgaben/modularisierung-subtrees/application`. @@ -68,7 +68,7 @@ Untersuche dann die entstandene Verzeichnisstruktur.
application $ cd ..


-

Schritt 2 - Änderung aus einem Modul übernehmen

+

Schritt 2 - Änderung aus einem Modul übernehmen

Starte im Verzeichnis `git-uebungen/aufgaben/modularisierung-subtrees`. @@ -77,7 +77,7 @@ Sie Dir das entstandene Commit an (`show --stat`) Gehe in das Repo `application` und hole die Änderungen per `subtree pull` ab. Sieh Dir das übertragene Commit an. -

Schritt 3 - Änderung in ein Modul übertragen

+

Schritt 3 - Änderung in ein Modul übertragen

Starte im Verzeichnis `git-uebungen/aufgaben/modularisierung-subtrees`. @@ -85,7 +85,7 @@ Gehe in `application` ändere `frontend/main.ts` und committe. Übertrage die Änderung per `subtree push` nach `frontend.git`. Sieh Dir das übertragene Commit in `frontend.git` an. -

Schritt 4 - Übergeordnetes Repo klonen

+

Schritt 4 - Übergeordnetes Repo klonen

Starte im Verzeichnis `git-uebungen/aufgaben/modularisierung-subtrees`. diff --git a/markdown-git-uebungen/aufgabe-repository-klonen.md b/markdown-git-uebungen/aufgabe-repository-klonen.md index 23c3e97..ac777bd 100644 --- a/markdown-git-uebungen/aufgabe-repository-klonen.md +++ b/markdown-git-uebungen/aufgabe-repository-klonen.md @@ -25,15 +25,15 @@ Es enthält zwei Commits. - `myfirstrepo/` Bereits vorhandenes Repository. -

Schritt 0 - START

+

Schritt 0 - START

-

Schritt 1 - Klon durchführen

+

Schritt 1 - Klon durchführen

Starte im Verzeichnis `git-uebungen/aufgaben/repository-klonen`. Erstelle einen Klon von `myfirstrepo` mit dem Namen `myfirstclone`. -

Schritt 2 - Klon untersuchen

+

Schritt 2 - Klon untersuchen

Starte im Verzeichnis `git-uebungen/aufgaben/repository-klonen`. @@ -43,7 +43,7 @@ zeige den Origin des Klons `myfirstclone`. von dem geklont wurde. Zeige dann den Status. -

Schritt 3 - Im Klon arbeiten

+

Schritt 3 - Im Klon arbeiten

Starte im Verzeichnis `git-uebungen/aufgaben/repository-klonen`. diff --git a/markdown-git-uebungen/aufgabe-repository-log.md b/markdown-git-uebungen/aufgabe-repository-log.md index 9afa004..040f91e 100644 --- a/markdown-git-uebungen/aufgabe-repository-log.md +++ b/markdown-git-uebungen/aufgabe-repository-log.md @@ -36,13 +36,13 @@ Im Verzeichnis `repo` wartet ein Git-Projekt darauf, untersucht zu werden. -

Schritt 0 - START

+

Schritt 0 - START

$ cd repo


-

Schritt 1 - Verzeichnisstruktur

+

Schritt 1 - Verzeichnisstruktur

Starte im Verzeichnis `git-uebungen/aufgaben/repository-log/repo`. @@ -50,28 +50,28 @@ Untersuche das Projektverzeichnis. Welche Dateien gibt es im Workspace? Welche Verzeichnisse? Wo liegt das Repository? -

Schritt 2 - Commits ansehen

+

Schritt 2 - Commits ansehen

Starte im Verzeichnis `git-uebungen/aufgaben/repository-log/repo`. Sieh Dir die Commits. Achte dabei auf die angezeigten Branches und Tags. -

Schritt 3 - Head-Commit untersuchen

+

Schritt 3 - Head-Commit untersuchen

Starte im Verzeichnis `git-uebungen/aufgaben/repository-log/repo`. Zeige Details zur aktuellen Version, die im Workspace ausgecheckt ist. -

Schritt 4 - Vergangene Commits untersuchen

+

Schritt 4 - Vergangene Commits untersuchen

Starte im Verzeichnis `git-uebungen/aufgaben/repository-log/repo`. Zeige Details zum Release1.0, und dann zur Vorgängerversion des Releases 1.0 -

Schritt 5 - ⭐ Inhalte vergangener Versionen untersuchen

+

Schritt 5 - ⭐ Inhalte vergangener Versionen untersuchen

Starte im Verzeichnis `git-uebungen/aufgaben/repository-log/repo`. @@ -80,7 +80,7 @@ es im vorigen Commit gab. Gebe den Inhalt der Datei `bar` so aus, wie er im vorigen Commit war. -

Schritt 6 - ⭐ Commits ansehen: Datei-Statistik

+

Schritt 6 - ⭐ Commits ansehen: Datei-Statistik

Starte im Verzeichnis `git-uebungen/aufgaben/repository-log/repo`. @@ -88,7 +88,7 @@ Sieh Dir die Commits an. Lase dir dabei die Statistik anzeigen, d.h. wie viele Zeilen in welcher Datei geändert wurden. -

Schritt 7 - ⭐ Herkunft von Zeilen ermitteln

+

Schritt 7 - ⭐ Herkunft von Zeilen ermitteln

Starte im Verzeichnis `git-uebungen/aufgaben/repository-log/repo`. diff --git a/markdown-git-uebungen/aufgabe-repository-sparse-checkout.md b/markdown-git-uebungen/aufgabe-repository-sparse-checkout.md index 9bf2ac4..ad02610 100644 --- a/markdown-git-uebungen/aufgabe-repository-sparse-checkout.md +++ b/markdown-git-uebungen/aufgabe-repository-sparse-checkout.md @@ -29,16 +29,16 @@ Es enthält Dateien auf dem Top-Level und in zwei Unterverzeichnissen. - `repo/` Bereits vorhandenes Repository. -

Schritt 0 - START

+

Schritt 0 - START

-

Schritt 1 - Sparse-Klon durchführen

+

Schritt 1 - Sparse-Klon durchführen

Starte im Verzeichnis `git-uebungen/aufgaben/repository-sparse-checkout`. Erstelle einen Sparse-Klon von `repo` mit dem Namen `myrepo`, überprüfe, dass nur Top-Level-Dateien in den Workspace geholt wurden. -

Schritt 2 - Verzeichnis hinzufügen

+

Schritt 2 - Verzeichnis hinzufügen

Starte im Verzeichnis `git-uebungen/aufgaben/repository-sparse-checkout`. @@ -46,14 +46,14 @@ Füge das Verzeichnis `component-a` hinzu . Überprüfe die neue Konfiguration. Validiere, dass `component-a` jetzt da ist. -

Schritt 3 - Sparse Checkout deaktivieren

+

Schritt 3 - Sparse Checkout deaktivieren

Starte im Verzeichnis `git-uebungen/aufgaben/repository-sparse-checkout`. | Deaktiviere Sparse-Checkout und führe erneut ein Checkout durch. | Validiere, dass jetzt alle Dateien da sind. -

Schritt 4 - Klonen und auschecken

+

Schritt 4 - Klonen und auschecken

Starte im Verzeichnis `git-uebungen/aufgaben/repository-sparse-checkout`. diff --git a/markdown-git-uebungen/aufgabe-repository-untersuchen.md b/markdown-git-uebungen/aufgabe-repository-untersuchen.md index a646fc8..ca8c872 100644 --- a/markdown-git-uebungen/aufgabe-repository-untersuchen.md +++ b/markdown-git-uebungen/aufgabe-repository-untersuchen.md @@ -30,20 +30,20 @@ Im Verzeichnis `repo` wartet ein Git-Projekt darauf, untersucht zu werden. -

Schritt 0 - START

+

Schritt 0 - START

$ cd repo


-

Schritt 1 - Branches zeigen

+

Schritt 1 - Branches zeigen

Starte im Verzeichnis `git-uebungen/aufgaben/repository-untersuchen/repo`. Zeige an, welche Branches es gibt. Zeige jetzt den Commit-Graphen über alle Branches an. -

Schritt 2 - Branch wechseln

+

Schritt 2 - Branch wechseln

Starte im Verzeichnis `git-uebungen/aufgaben/repository-untersuchen/repo`. @@ -51,13 +51,13 @@ Wechsle auf den Branch `feature-a`. Sieh Dir den Inhalt der Datei `bar` im Verzeichnis `foo` an. Wechsle zurück auf `main`. -

Schritt 3 - Tags zeigen

+

Schritt 3 - Tags zeigen

Starte im Verzeichnis `git-uebungen/aufgaben/repository-untersuchen/repo`. Zeige alle Tags an. -

Schritt 4 - ⭐ Inhalte vergangener Versionen untersuchen

+

Schritt 4 - ⭐ Inhalte vergangener Versionen untersuchen

Starte im Verzeichnis `git-uebungen/aufgaben/repository-untersuchen/repo`. @@ -67,7 +67,7 @@ Wechsle zum vorigen Commit, und untersuche, wie der Workspace dannn aussieht. Wechsle dann wieder auf `main` zurück. -

Schritt 5 - ⭐ Hole alten Stand einer einzelnen Datei zurück.

+

Schritt 5 - ⭐ Hole alten Stand einer einzelnen Datei zurück.

Starte im Verzeichnis `git-uebungen/aufgaben/repository-untersuchen/repo`. diff --git a/markdown-git-uebungen/aufgabe-weihnachten-gitmas.md b/markdown-git-uebungen/aufgabe-weihnachten-gitmas.md index 11f1dc0..5d7e14e 100644 --- a/markdown-git-uebungen/aufgabe-weihnachten-gitmas.md +++ b/markdown-git-uebungen/aufgabe-weihnachten-gitmas.md @@ -22,9 +22,9 @@ Lasse Deiner Kreativität freien Lauf, oder folge diesen **Tipps:** * Wenn Du scripten kannst, z.B. mit Bash oder Python: ˋforˋ-Schleifen sind nützlich. -

Schritt 0 - START

+

Schritt 0 - START

-

Schritt 1 - Und jetzt ein Weihnachtsbaum

+

Schritt 1 - Und jetzt ein Weihnachtsbaum

Starte im Verzeichnis `git-uebungen/aufgaben/weihnachten-gitmas`. diff --git a/markdown-git-uebungen/aufgabe-zusammenarbeit-branching-fortgeschritten.md b/markdown-git-uebungen/aufgabe-zusammenarbeit-branching-fortgeschritten.md index 6ecbd2d..c4363d0 100644 --- a/markdown-git-uebungen/aufgabe-zusammenarbeit-branching-fortgeschritten.md +++ b/markdown-git-uebungen/aufgabe-zusammenarbeit-branching-fortgeschritten.md @@ -27,13 +27,13 @@ nav_order: 999 ## Ausgangssituation -

Schritt 0 - START

+

Schritt 0 - START

$ cd repo


-

Schritt 1 - Branch erstellen

+

Schritt 1 - Branch erstellen

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-branching-fortgeschritten/repo`. @@ -42,14 +42,14 @@ und erstelle ein Commit. Wechsle dann zurück auf den `main` und bearbeite dort `bar`. Zeige den Commit-Graphen. -

Schritt 2 - Branch mergen

+

Schritt 2 - Branch mergen

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-branching-fortgeschritten/repo`. Merge `feature-a` auf den `main`und zeige den Commit-Graphen. -

Schritt 3 - ⭐ Merge analysieren

+

Schritt 3 - ⭐ Merge analysieren

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-branching-fortgeschritten/repo`. @@ -57,7 +57,7 @@ Zeige, welche Commits vom `main` im Merge hinzugekommen sind. Zeige, welche Commits von `feature-a` im Merge hinzugekommen sind. Zeige ebenfalls die Änderungen (Diffs) für beide Seiten. -

Schritt 4 - ⭐ Merge analysieren

+

Schritt 4 - ⭐ Merge analysieren

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-branching-fortgeschritten/repo`. @@ -65,7 +65,7 @@ Zeige, welche Commits vom `main` im Merge hinzugekommen sind. Zeige, welche Commits von `feature-a` im Merge hinzugekommen sind. Zeige ebenfalls die Änderungen (Diffs) für beide Seiten. -

Schritt 5 - Remote Branches untersuchen

+

Schritt 5 - Remote Branches untersuchen

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-branching-fortgeschritten/repo`. diff --git a/markdown-git-uebungen/aufgabe-zusammenarbeit-branching.md b/markdown-git-uebungen/aufgabe-zusammenarbeit-branching.md index f39af79..c5edd65 100644 --- a/markdown-git-uebungen/aufgabe-zusammenarbeit-branching.md +++ b/markdown-git-uebungen/aufgabe-zusammenarbeit-branching.md @@ -27,13 +27,13 @@ nav_order: 999 ## Ausgangssituation -

Schritt 0 - START

+

Schritt 0 - START

$ cd repo


-

Schritt 1 - Branch erstellen

+

Schritt 1 - Branch erstellen

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-branching/repo`. @@ -42,7 +42,7 @@ und erstelle ein Commit. Wechsle dann zurück auf den `main` und bearbeite dort `bar`. Zeige den Commit-Graphen. -

Schritt 2 - Branch mergen

+

Schritt 2 - Branch mergen

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-branching/repo`. diff --git a/markdown-git-uebungen/aufgabe-zusammenarbeit-integration-von-aenderungen.md b/markdown-git-uebungen/aufgabe-zusammenarbeit-integration-von-aenderungen.md index 63a78c0..7933ec1 100644 --- a/markdown-git-uebungen/aufgabe-zusammenarbeit-integration-von-aenderungen.md +++ b/markdown-git-uebungen/aufgabe-zusammenarbeit-integration-von-aenderungen.md @@ -53,13 +53,13 @@ Anja hat aber parallel ebenfalls weiter gearbeitet. Integrieren Sie die neuen Änderungen von Anja. -

Schritt 0 - START

+

Schritt 0 - START

$ cd fast-forward


-

Schritt 1 - Fast-Forward beim Pull

+

Schritt 1 - Fast-Forward beim Pull

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-integration-von-aenderungen/fast-forward`. @@ -78,7 +78,7 @@ Lasse Dir Status und den Commit-Graphen zeigen.
$ cd no-ff


-

Schritt 2 - Merge erzwingen beim Pull

+

Schritt 2 - Merge erzwingen beim Pull

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-integration-von-aenderungen/no-ff`. @@ -97,7 +97,7 @@ Lasse Dir Status und den Commit-Graphen zeigen.
$ cd changes-in-different-files


-

Schritt 3 - Integration bei Änderungen in verschiedenen Dateien

+

Schritt 3 - Integration bei Änderungen in verschiedenen Dateien

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-integration-von-aenderungen/changes-in-different-files`. @@ -122,7 +122,7 @@ Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-integration-von-aend
$ cd changes-in-same-files


-

Schritt 4 - Integration bei Änderungen in derselben Datei

+

Schritt 4 - Integration bei Änderungen in derselben Datei

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-integration-von-aenderungen/changes-in-same-files`. diff --git a/markdown-git-uebungen/aufgabe-zusammenarbeit-push-fetch-pull.md b/markdown-git-uebungen/aufgabe-zusammenarbeit-push-fetch-pull.md index d0202d8..cf61816 100644 --- a/markdown-git-uebungen/aufgabe-zusammenarbeit-push-fetch-pull.md +++ b/markdown-git-uebungen/aufgabe-zusammenarbeit-push-fetch-pull.md @@ -19,20 +19,20 @@ nav_order: 999 ## Setup -

Schritt 0 - START

+

Schritt 0 - START

$ cd mein-klon


-

Schritt 1 - Änderungen holen

+

Schritt 1 - Änderungen holen

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-push-fetch-pull/mein-klon`. Hole die beiden neuen Commits vom `origin`-Repository, ohne den lokalen `main` zu verändern. -

Schritt 2 - Änderungen untersuchen

+

Schritt 2 - Änderungen untersuchen

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-push-fetch-pull/mein-klon`. @@ -41,7 +41,7 @@ und untersuche dann, welche Commits im `main` des `origin`-Repository vorhanden sind, welche im lokalen `main` noch nicht integriert wurden.. -

Schritt 3 - Änderungen integrieren

+

Schritt 3 - Änderungen integrieren

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-push-fetch-pull/mein-klon`. diff --git a/markdown-git-uebungen/aufgabe-zusammenarbeit-push-rejected.md b/markdown-git-uebungen/aufgabe-zusammenarbeit-push-rejected.md index 78eef1b..fe7e64a 100644 --- a/markdown-git-uebungen/aufgabe-zusammenarbeit-push-rejected.md +++ b/markdown-git-uebungen/aufgabe-zusammenarbeit-push-rejected.md @@ -55,26 +55,26 @@ wirst Du einen *Push Reject* erfahren. - `anjas-apollo/` Hier arbeitet Anja. - `my-apollo/` **Du arbeitest hier.** -

Schritt 0 - START

+

Schritt 0 - START

$ cd my-apollo


-

Schritt 1 - Lokal Commit(s) erstellen

+

Schritt 1 - Lokal Commit(s) erstellen

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-push-rejected/my-apollo`. Bearbeite die Datei `frontend.java` und erstelle (mindestens) ein Commit mit den Änderungen. Überprüfe danach mit `git status`, ob der Workspace sauber ist. -

Schritt 2 - Push versuchen

+

Schritt 2 - Push versuchen

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-push-rejected/my-apollo`. Versuche jetzt Deine Änderungen zu pushen. -

Schritt 3 - (optional) Problem analysieren

+

Schritt 3 - (optional) Problem analysieren

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-push-rejected/my-apollo`. @@ -85,13 +85,13 @@ und lasse Dir die Änderungen von *Anja* zeigen. * Welche Unterschiede gibt es zweichen deiner und Anjas Version (symmetrisches `diff`)? * Welche Änderungen hat Anja gemacht (asymmetrisches `diff`)? -

Schritt 4 - Fremde Änderungen integrieren

+

Schritt 4 - Fremde Änderungen integrieren

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-push-rejected/my-apollo`. Integriere die Änderungen mit Pull und sieh Dir dann den Commit-Graphen an. -

Schritt 5 - Erneut pushen

+

Schritt 5 - Erneut pushen

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-push-rejected/my-apollo`. diff --git a/markdown-git-uebungen/aufgabe-zusammenarbeit-rebasing.md b/markdown-git-uebungen/aufgabe-zusammenarbeit-rebasing.md index 8fb38f0..4768b9f 100644 --- a/markdown-git-uebungen/aufgabe-zusammenarbeit-rebasing.md +++ b/markdown-git-uebungen/aufgabe-zusammenarbeit-rebasing.md @@ -23,13 +23,13 @@ Rebasing ist, neben dem Merging, eine weitere Möglichkeit, ## Ausgangssituation -

Schritt 0 - START

+

Schritt 0 - START

$ cd repo


-

Schritt 1 - Feature-Branch per Rebase aktualiseren.

+

Schritt 1 - Feature-Branch per Rebase aktualiseren.

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-rebasing/repo`. diff --git a/markdown-git-uebungen/aufgabe-zusammenarbeit-reverting.md b/markdown-git-uebungen/aufgabe-zusammenarbeit-reverting.md index 48e375b..1654a83 100644 --- a/markdown-git-uebungen/aufgabe-zusammenarbeit-reverting.md +++ b/markdown-git-uebungen/aufgabe-zusammenarbeit-reverting.md @@ -36,13 +36,13 @@ Das Merge-Commit ist mit `feature-merge` getagged. Beide Änderungen sollen zurückgenommen werden. -

Schritt 0 - START

+

Schritt 0 - START

$ cd repo


-

Schritt 1 - Einzelnes Commit rückgängig machen.

+

Schritt 1 - Einzelnes Commit rückgängig machen.

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-reverting/repo`. @@ -50,7 +50,7 @@ In der Historie wurde die Datei `README.md` in `liesmich` umbenannt. Mache diese Änderung rückgängig. Tipp: Das Commit ist als `umbenennung` getagged. -

Schritt 2 - Merge-Commit rückgängig machen.

+

Schritt 2 - Merge-Commit rückgängig machen.

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-reverting/repo`. @@ -58,7 +58,7 @@ In der Historie wurde ein Feature-Branch per Merge integriert.file . Mache dies Tipp: Das Merge-Commit ist als `feature-merge` getagged. Tipp: Am verschinden der Datei `from-feature` kann man den Erfolg erkennen. -

Schritt 3 - Feature-Branch kaputt!?

+

Schritt 3 - Feature-Branch kaputt!?

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-reverting/repo`. @@ -72,7 +72,7 @@ Versuche ihn erneut zu Mergen. Untersuche die Fehlermeldung und den Commit-Graphen. Tipp: Das gescheiterte Merge kann mit `git merge --abort` abgebrochen werden. -

Schritt 4 - Merge-Revert wieder rückgängig machen.

+

Schritt 4 - Merge-Revert wieder rückgängig machen.

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-reverting/repo`. diff --git a/markdown-git-uebungen/aufgabe-zusammenarbeit-tags.md b/markdown-git-uebungen/aufgabe-zusammenarbeit-tags.md index bb806d4..db8ebe1 100644 --- a/markdown-git-uebungen/aufgabe-zusammenarbeit-tags.md +++ b/markdown-git-uebungen/aufgabe-zusammenarbeit-tags.md @@ -31,13 +31,13 @@ nav_order: 999 ## Setup -

Schritt 0 - START

+

Schritt 0 - START

$ cd mein-klon


-

Schritt 1 - Tags erstellen

+

Schritt 1 - Tags erstellen

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-tags/mein-klon`. @@ -45,13 +45,13 @@ Erstelle ein einfaches Tag `simple1` auf `HEAD` und ein annotated Tag `annotated1` auf `HEAD~1`. Sieh zuerst das Log und dann beide Tags einzeln an (`git show an`). -

Schritt 2 - Tags holen

+

Schritt 2 - Tags holen

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-tags/mein-klon`. Einfach per pull. -

Schritt 3 - Tags pushen

+

Schritt 3 - Tags pushen

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-tags/mein-klon`. @@ -59,7 +59,7 @@ Beim einfachen `git push` werden keine Tags übertragen. Übertrage zunächste gezielt das Tag `simple1` mit einem Push und danach alle weiteren Tags mit einem weiteren Push -

Schritt 4 - Manipulieren

+

Schritt 4 - Manipulieren

Starte im Verzeichnis `git-uebungen/aufgaben/zusammenarbeit-tags/mein-klon`.