From 11f8762b7d85cb4b982731031cf75448d23fa99a Mon Sep 17 00:00:00 2001 From: Branimir Georgiev Date: Sun, 26 Apr 2026 08:15:46 +0300 Subject: [PATCH 1/3] docs: rename playbook/ to 07-playbook/ for consistent chapter numbering Closes #156 Co-Authored-By: Claude Opus 4.6 (1M context) --- CLAUDE.md | 2 +- README.md | 2 +- chapters/{playbook => 07-playbook}/branching.md | 0 chapters/{playbook => 07-playbook}/cherry-picking.md | 0 chapters/{playbook => 07-playbook}/configuration.md | 0 chapters/{playbook => 07-playbook}/debugging.md | 0 chapters/{playbook => 07-playbook}/diffing.md | 0 chapters/{playbook => 07-playbook}/history.md | 0 chapters/{playbook => 07-playbook}/hooks.md | 0 chapters/{playbook => 07-playbook}/index.md | 0 chapters/{playbook => 07-playbook}/merging.md | 0 chapters/{playbook => 07-playbook}/rebasing.md | 0 chapters/{playbook => 07-playbook}/remote-management.md | 0 chapters/{playbook => 07-playbook}/remote-operations.md | 0 chapters/{playbook => 07-playbook}/selectors.md | 0 chapters/{playbook => 07-playbook}/stashing.md | 0 chapters/{playbook => 07-playbook}/submodules.md | 0 chapters/{playbook => 07-playbook}/subtrees.md | 0 chapters/{playbook => 07-playbook}/tagging.md | 0 chapters/{playbook => 07-playbook}/undoing-changes.md | 0 chapters/08-appendix.md | 2 +- chapters/09-glossary.md | 4 ++-- docs/ONBOARDING.md | 2 +- docs/PLAYBOOK.md | 2 +- 24 files changed, 7 insertions(+), 7 deletions(-) rename chapters/{playbook => 07-playbook}/branching.md (100%) rename chapters/{playbook => 07-playbook}/cherry-picking.md (100%) rename chapters/{playbook => 07-playbook}/configuration.md (100%) rename chapters/{playbook => 07-playbook}/debugging.md (100%) rename chapters/{playbook => 07-playbook}/diffing.md (100%) rename chapters/{playbook => 07-playbook}/history.md (100%) rename chapters/{playbook => 07-playbook}/hooks.md (100%) rename chapters/{playbook => 07-playbook}/index.md (100%) rename chapters/{playbook => 07-playbook}/merging.md (100%) rename chapters/{playbook => 07-playbook}/rebasing.md (100%) rename chapters/{playbook => 07-playbook}/remote-management.md (100%) rename chapters/{playbook => 07-playbook}/remote-operations.md (100%) rename chapters/{playbook => 07-playbook}/selectors.md (100%) rename chapters/{playbook => 07-playbook}/stashing.md (100%) rename chapters/{playbook => 07-playbook}/submodules.md (100%) rename chapters/{playbook => 07-playbook}/subtrees.md (100%) rename chapters/{playbook => 07-playbook}/tagging.md (100%) rename chapters/{playbook => 07-playbook}/undoing-changes.md (100%) diff --git a/CLAUDE.md b/CLAUDE.md index 9cf67a5..cbf6117 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -36,7 +36,7 @@ chapters/ # SSG-agnostic tutorial content (canonical) 04-remote-repositories.md 05-nested-repositories.md 06-expert-topics.md - 07-playbook.md + 07-playbook/ (17 recipe pages) 08-appendix.md 09-glossary.md assets/ diff --git a/README.md b/README.md index 3f7990e..90040c7 100644 --- a/README.md +++ b/README.md @@ -37,7 +37,7 @@ directory. | 4 | [Remote Repositories](chapters/04-remote-repositories.md) | Clone, push, pull, fetch, remote tracking, forking workflows | | 5 | [Nested Repositories](chapters/05-nested-repositories.md) | Submodules and subtrees | | 6 | [Expert Topics](chapters/06-expert-topics.md) | Configuration, selectors, refspecs, hooks, bisect | -| 7 | [Playbook](chapters/07-playbook.md) | Step-by-step recipes for common tasks | +| 7 | [Playbook](chapters/07-playbook/index.md) | Step-by-step recipes for common tasks | | 8 | [Appendix](chapters/08-appendix.md) | Merge strategies, SSH setup, Git clients, references | | 9 | [Glossary](chapters/09-glossary.md) | Key terms and definitions | diff --git a/chapters/playbook/branching.md b/chapters/07-playbook/branching.md similarity index 100% rename from chapters/playbook/branching.md rename to chapters/07-playbook/branching.md diff --git a/chapters/playbook/cherry-picking.md b/chapters/07-playbook/cherry-picking.md similarity index 100% rename from chapters/playbook/cherry-picking.md rename to chapters/07-playbook/cherry-picking.md diff --git a/chapters/playbook/configuration.md b/chapters/07-playbook/configuration.md similarity index 100% rename from chapters/playbook/configuration.md rename to chapters/07-playbook/configuration.md diff --git a/chapters/playbook/debugging.md b/chapters/07-playbook/debugging.md similarity index 100% rename from chapters/playbook/debugging.md rename to chapters/07-playbook/debugging.md diff --git a/chapters/playbook/diffing.md b/chapters/07-playbook/diffing.md similarity index 100% rename from chapters/playbook/diffing.md rename to chapters/07-playbook/diffing.md diff --git a/chapters/playbook/history.md b/chapters/07-playbook/history.md similarity index 100% rename from chapters/playbook/history.md rename to chapters/07-playbook/history.md diff --git a/chapters/playbook/hooks.md b/chapters/07-playbook/hooks.md similarity index 100% rename from chapters/playbook/hooks.md rename to chapters/07-playbook/hooks.md diff --git a/chapters/playbook/index.md b/chapters/07-playbook/index.md similarity index 100% rename from chapters/playbook/index.md rename to chapters/07-playbook/index.md diff --git a/chapters/playbook/merging.md b/chapters/07-playbook/merging.md similarity index 100% rename from chapters/playbook/merging.md rename to chapters/07-playbook/merging.md diff --git a/chapters/playbook/rebasing.md b/chapters/07-playbook/rebasing.md similarity index 100% rename from chapters/playbook/rebasing.md rename to chapters/07-playbook/rebasing.md diff --git a/chapters/playbook/remote-management.md b/chapters/07-playbook/remote-management.md similarity index 100% rename from chapters/playbook/remote-management.md rename to chapters/07-playbook/remote-management.md diff --git a/chapters/playbook/remote-operations.md b/chapters/07-playbook/remote-operations.md similarity index 100% rename from chapters/playbook/remote-operations.md rename to chapters/07-playbook/remote-operations.md diff --git a/chapters/playbook/selectors.md b/chapters/07-playbook/selectors.md similarity index 100% rename from chapters/playbook/selectors.md rename to chapters/07-playbook/selectors.md diff --git a/chapters/playbook/stashing.md b/chapters/07-playbook/stashing.md similarity index 100% rename from chapters/playbook/stashing.md rename to chapters/07-playbook/stashing.md diff --git a/chapters/playbook/submodules.md b/chapters/07-playbook/submodules.md similarity index 100% rename from chapters/playbook/submodules.md rename to chapters/07-playbook/submodules.md diff --git a/chapters/playbook/subtrees.md b/chapters/07-playbook/subtrees.md similarity index 100% rename from chapters/playbook/subtrees.md rename to chapters/07-playbook/subtrees.md diff --git a/chapters/playbook/tagging.md b/chapters/07-playbook/tagging.md similarity index 100% rename from chapters/playbook/tagging.md rename to chapters/07-playbook/tagging.md diff --git a/chapters/playbook/undoing-changes.md b/chapters/07-playbook/undoing-changes.md similarity index 100% rename from chapters/playbook/undoing-changes.md rename to chapters/07-playbook/undoing-changes.md diff --git a/chapters/08-appendix.md b/chapters/08-appendix.md index 685095a..3e98560 100644 --- a/chapters/08-appendix.md +++ b/chapters/08-appendix.md @@ -9,7 +9,7 @@ order: 8 This appendix contains reference material that supports the tutorial chapters — merge strategies, Git clients, external resources, and -notes. For step-by-step recipes, see the [Playbook](playbook/index.md). +notes. For step-by-step recipes, see the [Playbook](07-playbook/index.md). For command help, run `git help `. In this chapter you will learn: diff --git a/chapters/09-glossary.md b/chapters/09-glossary.md index d422c77..2b6816c 100644 --- a/chapters/09-glossary.md +++ b/chapters/09-glossary.md @@ -14,7 +14,7 @@ A reference of key Git terms used throughout this tutorial, with links to the ch | Annotated tag | A tag object with author, date, and message — stored in `.git/objects/` | [2](02-building-blocks.md) | | Bare repository | A repository with no working tree — only `.git/` internals | [2](02-building-blocks.md) | | Bisect | Binary search through commit history to find the commit that introduced a bug | [6](06-expert-topics.md) | -| Blame | Show which commit and author last modified each line of a file | [7](playbook/debugging.md) | +| Blame | Show which commit and author last modified each line of a file | [7](07-playbook/debugging.md) | | Blob | Object that stores the raw contents of a single file | [2](02-building-blocks.md) | | Branch | A movable pointer to a commit, stored in `.git/refs/heads/` | [2](02-building-blocks.md) | | Cherry-pick | Copy a single commit from one branch onto another, creating a new commit with a different hash | [3](03-branching-and-merging.md) | @@ -47,7 +47,7 @@ A reference of key Git terms used throughout this tutorial, with links to the ch | Remote-tracking branch | A read-only local reference that mirrors a remote branch (e.g. `origin/main`), updated by fetch and pull | [4](04-remote-repositories.md) | | Repository | The `.git/` directory containing all objects, references, and configuration for a project | [2](02-building-blocks.md) | | Reset | Move HEAD and optionally the branch tip to a different commit — `--soft`, `--mixed`, or `--hard` | [2](02-building-blocks.md) | -| Revert | Create a new commit that undoes a previous commit's changes without rewriting history | [7](playbook/undoing-changes.md) | +| Revert | Create a new commit that undoes a previous commit's changes without rewriting history | [7](07-playbook/undoing-changes.md) | | Squash merge | Combine all commits from a branch into a single change set on the target branch — no merge commit | [3](03-branching-and-merging.md) | | Stash | Save uncommitted changes temporarily so you can switch branches with a clean working tree | [3](03-branching-and-merging.md) | | Submodule | A reference to a specific commit in another repository — stores URL and hash, not files | [5](05-nested-repositories.md) | diff --git a/docs/ONBOARDING.md b/docs/ONBOARDING.md index bc5ba4c..d06c570 100644 --- a/docs/ONBOARDING.md +++ b/docs/ONBOARDING.md @@ -68,7 +68,7 @@ files for the web version. ``` 01-introduction.md 06-expert-topics.md -02-building-blocks.md playbook/ (17 recipe pages) +02-building-blocks.md 07-playbook/ (17 recipe pages) 03-branching-and-merging.md 08-appendix.md 04-remote-repositories.md 09-glossary.md 05-nested-repositories.md diff --git a/docs/PLAYBOOK.md b/docs/PLAYBOOK.md index 2bc46f7..69c0e28 100644 --- a/docs/PLAYBOOK.md +++ b/docs/PLAYBOOK.md @@ -33,7 +33,7 @@ Operational reference for common tasks in tutorial-git. - Place exercises at the end of the chapter under `## Exercises` - Each exercise has: **Task**, **Steps** (numbered), **Verify** - Exercises within a chapter use the same lab repository -- Cross-topic recipes go in `chapters/playbook/` +- Cross-topic recipes go in `chapters/07-playbook/` ### 1.4 Adding quiz questions From 5543a144d40eb78a8f5af543235da74d7ef51424 Mon Sep 17 00:00:00 2001 From: Branimir Georgiev Date: Sun, 26 Apr 2026 08:18:13 +0300 Subject: [PATCH 2/3] docs: extract 07-playbook.md and rename recipe directory to recipes/ Separates the chapter entry point (07-playbook.md) from the recipe pages (recipes/). All chapters now follow the NN-name.md pattern and the recipe directory has a self-explanatory name. Co-Authored-By: Claude Opus 4.6 (1M context) --- CLAUDE.md | 3 +- README.md | 2 +- chapters/07-playbook.md | 57 +++++++++++++++++++ chapters/07-playbook/index.md | 57 ------------------- chapters/08-appendix.md | 2 +- chapters/09-glossary.md | 4 +- .../{07-playbook => recipes}/branching.md | 0 .../cherry-picking.md | 0 .../{07-playbook => recipes}/configuration.md | 0 .../{07-playbook => recipes}/debugging.md | 0 chapters/{07-playbook => recipes}/diffing.md | 0 chapters/{07-playbook => recipes}/history.md | 0 chapters/{07-playbook => recipes}/hooks.md | 0 chapters/{07-playbook => recipes}/merging.md | 0 chapters/{07-playbook => recipes}/rebasing.md | 0 .../remote-management.md | 0 .../remote-operations.md | 0 .../{07-playbook => recipes}/selectors.md | 0 chapters/{07-playbook => recipes}/stashing.md | 0 .../{07-playbook => recipes}/submodules.md | 0 chapters/{07-playbook => recipes}/subtrees.md | 0 chapters/{07-playbook => recipes}/tagging.md | 0 .../undoing-changes.md | 0 docs/ONBOARDING.md | 3 +- docs/PLAYBOOK.md | 2 +- 25 files changed, 66 insertions(+), 64 deletions(-) create mode 100644 chapters/07-playbook.md delete mode 100644 chapters/07-playbook/index.md rename chapters/{07-playbook => recipes}/branching.md (100%) rename chapters/{07-playbook => recipes}/cherry-picking.md (100%) rename chapters/{07-playbook => recipes}/configuration.md (100%) rename chapters/{07-playbook => recipes}/debugging.md (100%) rename chapters/{07-playbook => recipes}/diffing.md (100%) rename chapters/{07-playbook => recipes}/history.md (100%) rename chapters/{07-playbook => recipes}/hooks.md (100%) rename chapters/{07-playbook => recipes}/merging.md (100%) rename chapters/{07-playbook => recipes}/rebasing.md (100%) rename chapters/{07-playbook => recipes}/remote-management.md (100%) rename chapters/{07-playbook => recipes}/remote-operations.md (100%) rename chapters/{07-playbook => recipes}/selectors.md (100%) rename chapters/{07-playbook => recipes}/stashing.md (100%) rename chapters/{07-playbook => recipes}/submodules.md (100%) rename chapters/{07-playbook => recipes}/subtrees.md (100%) rename chapters/{07-playbook => recipes}/tagging.md (100%) rename chapters/{07-playbook => recipes}/undoing-changes.md (100%) diff --git a/CLAUDE.md b/CLAUDE.md index cbf6117..f4875bf 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -36,7 +36,8 @@ chapters/ # SSG-agnostic tutorial content (canonical) 04-remote-repositories.md 05-nested-repositories.md 06-expert-topics.md - 07-playbook/ (17 recipe pages) + 07-playbook.md + recipes/ (17 recipe pages) 08-appendix.md 09-glossary.md assets/ diff --git a/README.md b/README.md index 90040c7..3f7990e 100644 --- a/README.md +++ b/README.md @@ -37,7 +37,7 @@ directory. | 4 | [Remote Repositories](chapters/04-remote-repositories.md) | Clone, push, pull, fetch, remote tracking, forking workflows | | 5 | [Nested Repositories](chapters/05-nested-repositories.md) | Submodules and subtrees | | 6 | [Expert Topics](chapters/06-expert-topics.md) | Configuration, selectors, refspecs, hooks, bisect | -| 7 | [Playbook](chapters/07-playbook/index.md) | Step-by-step recipes for common tasks | +| 7 | [Playbook](chapters/07-playbook.md) | Step-by-step recipes for common tasks | | 8 | [Appendix](chapters/08-appendix.md) | Merge strategies, SSH setup, Git clients, references | | 9 | [Glossary](chapters/09-glossary.md) | Key terms and definitions | diff --git a/chapters/07-playbook.md b/chapters/07-playbook.md new file mode 100644 index 0000000..7a71309 --- /dev/null +++ b/chapters/07-playbook.md @@ -0,0 +1,57 @@ +--- +title: "Playbook" +description: "Step-by-step recipes for common Git tasks — undoing changes, branching, merging, rebasing, stashing, tagging, and debugging." +section: "playbook" +order: 7 +--- + +## Overview + +This chapter is a quick-reference collection of recipes for common +Git tasks. Each recipe shows the problem, the commands to solve it, +and what to watch out for. + +For command syntax, see the [official Git reference](https://git-scm.com/docs). +For definitions, see [Glossary](09-glossary.md). + +## Everyday + +| Recipe | What you'll find | +|--------|-----------------| +| [Undoing Changes](recipes/undoing-changes.md) | Discard, unstage, reset, revert, and recover lost commits | +| [Diffing](recipes/diffing.md) | Unstaged, staged, between branches, commits, and files | +| [History](recipes/history.md) | Log formatting, filtering by author, date, and path | +| [Stashing](recipes/stashing.md) | Save and restore work in progress | + +## Branching and Merging + +| Recipe | What you'll find | +|--------|-----------------| +| [Branching](recipes/branching.md) | Create, delete, rename, and inspect branches | +| [Merging](recipes/merging.md) | Fast-forward, no-ff, squash, conflict resolution | +| [Rebasing](recipes/rebasing.md) | Linearize history and squash commits interactively | +| [Cherry-Picking](recipes/cherry-picking.md) | Apply individual commits across branches | + +## Remote + +| Recipe | What you'll find | +|--------|-----------------| +| [Remote Operations](recipes/remote-operations.md) | Push, pull, force push safely, sync forks | +| [Remote Management](recipes/remote-management.md) | Add, rename, remove remotes, switch URL, SSH setup | + +## Project Structure + +| Recipe | What you'll find | +|--------|-----------------| +| [Tagging](recipes/tagging.md) | Create, push, and delete annotated tags | +| [Submodules](recipes/submodules.md) | Add, clone, update, and remove submodules | +| [Subtrees](recipes/subtrees.md) | Add, pull, push, and remove subtrees | + +## Advanced + +| Recipe | What you'll find | +|--------|-----------------| +| [Selectors](recipes/selectors.md) | Tilde, caret, double-dot, triple-dot, reflog refs | +| [Hooks](recipes/hooks.md) | Pre-commit, commit-msg, sharing hooks, bypassing | +| [Debugging](recipes/debugging.md) | Bisect, blame, and search commit history | +| [Configuration](recipes/configuration.md) | Identity, defaults, aliases, and diagnostics | diff --git a/chapters/07-playbook/index.md b/chapters/07-playbook/index.md deleted file mode 100644 index 5a4847d..0000000 --- a/chapters/07-playbook/index.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -title: "Playbook" -description: "Step-by-step recipes for common Git tasks — undoing changes, branching, merging, rebasing, stashing, tagging, and debugging." -section: "playbook" -order: 7 ---- - -## Overview - -This chapter is a quick-reference collection of recipes for common -Git tasks. Each recipe shows the problem, the commands to solve it, -and what to watch out for. - -For command syntax, see the [official Git reference](https://git-scm.com/docs). -For definitions, see [Glossary](../09-glossary.md). - -## Everyday - -| Recipe | What you'll find | -|--------|-----------------| -| [Undoing Changes](undoing-changes.md) | Discard, unstage, reset, revert, and recover lost commits | -| [Diffing](diffing.md) | Unstaged, staged, between branches, commits, and files | -| [History](history.md) | Log formatting, filtering by author, date, and path | -| [Stashing](stashing.md) | Save and restore work in progress | - -## Branching and Merging - -| Recipe | What you'll find | -|--------|-----------------| -| [Branching](branching.md) | Create, delete, rename, and inspect branches | -| [Merging](merging.md) | Fast-forward, no-ff, squash, conflict resolution | -| [Rebasing](rebasing.md) | Linearize history and squash commits interactively | -| [Cherry-Picking](cherry-picking.md) | Apply individual commits across branches | - -## Remote - -| Recipe | What you'll find | -|--------|-----------------| -| [Remote Operations](remote-operations.md) | Push, pull, force push safely, sync forks | -| [Remote Management](remote-management.md) | Add, rename, remove remotes, switch URL, SSH setup | - -## Project Structure - -| Recipe | What you'll find | -|--------|-----------------| -| [Tagging](tagging.md) | Create, push, and delete annotated tags | -| [Submodules](submodules.md) | Add, clone, update, and remove submodules | -| [Subtrees](subtrees.md) | Add, pull, push, and remove subtrees | - -## Advanced - -| Recipe | What you'll find | -|--------|-----------------| -| [Selectors](selectors.md) | Tilde, caret, double-dot, triple-dot, reflog refs | -| [Hooks](hooks.md) | Pre-commit, commit-msg, sharing hooks, bypassing | -| [Debugging](debugging.md) | Bisect, blame, and search commit history | -| [Configuration](configuration.md) | Identity, defaults, aliases, and diagnostics | diff --git a/chapters/08-appendix.md b/chapters/08-appendix.md index 3e98560..cd0bbc6 100644 --- a/chapters/08-appendix.md +++ b/chapters/08-appendix.md @@ -9,7 +9,7 @@ order: 8 This appendix contains reference material that supports the tutorial chapters — merge strategies, Git clients, external resources, and -notes. For step-by-step recipes, see the [Playbook](07-playbook/index.md). +notes. For step-by-step recipes, see the [Playbook](07-playbook.md). For command help, run `git help `. In this chapter you will learn: diff --git a/chapters/09-glossary.md b/chapters/09-glossary.md index 2b6816c..421bc51 100644 --- a/chapters/09-glossary.md +++ b/chapters/09-glossary.md @@ -14,7 +14,7 @@ A reference of key Git terms used throughout this tutorial, with links to the ch | Annotated tag | A tag object with author, date, and message — stored in `.git/objects/` | [2](02-building-blocks.md) | | Bare repository | A repository with no working tree — only `.git/` internals | [2](02-building-blocks.md) | | Bisect | Binary search through commit history to find the commit that introduced a bug | [6](06-expert-topics.md) | -| Blame | Show which commit and author last modified each line of a file | [7](07-playbook/debugging.md) | +| Blame | Show which commit and author last modified each line of a file | [7](recipes/debugging.md) | | Blob | Object that stores the raw contents of a single file | [2](02-building-blocks.md) | | Branch | A movable pointer to a commit, stored in `.git/refs/heads/` | [2](02-building-blocks.md) | | Cherry-pick | Copy a single commit from one branch onto another, creating a new commit with a different hash | [3](03-branching-and-merging.md) | @@ -47,7 +47,7 @@ A reference of key Git terms used throughout this tutorial, with links to the ch | Remote-tracking branch | A read-only local reference that mirrors a remote branch (e.g. `origin/main`), updated by fetch and pull | [4](04-remote-repositories.md) | | Repository | The `.git/` directory containing all objects, references, and configuration for a project | [2](02-building-blocks.md) | | Reset | Move HEAD and optionally the branch tip to a different commit — `--soft`, `--mixed`, or `--hard` | [2](02-building-blocks.md) | -| Revert | Create a new commit that undoes a previous commit's changes without rewriting history | [7](07-playbook/undoing-changes.md) | +| Revert | Create a new commit that undoes a previous commit's changes without rewriting history | [7](recipes/undoing-changes.md) | | Squash merge | Combine all commits from a branch into a single change set on the target branch — no merge commit | [3](03-branching-and-merging.md) | | Stash | Save uncommitted changes temporarily so you can switch branches with a clean working tree | [3](03-branching-and-merging.md) | | Submodule | A reference to a specific commit in another repository — stores URL and hash, not files | [5](05-nested-repositories.md) | diff --git a/chapters/07-playbook/branching.md b/chapters/recipes/branching.md similarity index 100% rename from chapters/07-playbook/branching.md rename to chapters/recipes/branching.md diff --git a/chapters/07-playbook/cherry-picking.md b/chapters/recipes/cherry-picking.md similarity index 100% rename from chapters/07-playbook/cherry-picking.md rename to chapters/recipes/cherry-picking.md diff --git a/chapters/07-playbook/configuration.md b/chapters/recipes/configuration.md similarity index 100% rename from chapters/07-playbook/configuration.md rename to chapters/recipes/configuration.md diff --git a/chapters/07-playbook/debugging.md b/chapters/recipes/debugging.md similarity index 100% rename from chapters/07-playbook/debugging.md rename to chapters/recipes/debugging.md diff --git a/chapters/07-playbook/diffing.md b/chapters/recipes/diffing.md similarity index 100% rename from chapters/07-playbook/diffing.md rename to chapters/recipes/diffing.md diff --git a/chapters/07-playbook/history.md b/chapters/recipes/history.md similarity index 100% rename from chapters/07-playbook/history.md rename to chapters/recipes/history.md diff --git a/chapters/07-playbook/hooks.md b/chapters/recipes/hooks.md similarity index 100% rename from chapters/07-playbook/hooks.md rename to chapters/recipes/hooks.md diff --git a/chapters/07-playbook/merging.md b/chapters/recipes/merging.md similarity index 100% rename from chapters/07-playbook/merging.md rename to chapters/recipes/merging.md diff --git a/chapters/07-playbook/rebasing.md b/chapters/recipes/rebasing.md similarity index 100% rename from chapters/07-playbook/rebasing.md rename to chapters/recipes/rebasing.md diff --git a/chapters/07-playbook/remote-management.md b/chapters/recipes/remote-management.md similarity index 100% rename from chapters/07-playbook/remote-management.md rename to chapters/recipes/remote-management.md diff --git a/chapters/07-playbook/remote-operations.md b/chapters/recipes/remote-operations.md similarity index 100% rename from chapters/07-playbook/remote-operations.md rename to chapters/recipes/remote-operations.md diff --git a/chapters/07-playbook/selectors.md b/chapters/recipes/selectors.md similarity index 100% rename from chapters/07-playbook/selectors.md rename to chapters/recipes/selectors.md diff --git a/chapters/07-playbook/stashing.md b/chapters/recipes/stashing.md similarity index 100% rename from chapters/07-playbook/stashing.md rename to chapters/recipes/stashing.md diff --git a/chapters/07-playbook/submodules.md b/chapters/recipes/submodules.md similarity index 100% rename from chapters/07-playbook/submodules.md rename to chapters/recipes/submodules.md diff --git a/chapters/07-playbook/subtrees.md b/chapters/recipes/subtrees.md similarity index 100% rename from chapters/07-playbook/subtrees.md rename to chapters/recipes/subtrees.md diff --git a/chapters/07-playbook/tagging.md b/chapters/recipes/tagging.md similarity index 100% rename from chapters/07-playbook/tagging.md rename to chapters/recipes/tagging.md diff --git a/chapters/07-playbook/undoing-changes.md b/chapters/recipes/undoing-changes.md similarity index 100% rename from chapters/07-playbook/undoing-changes.md rename to chapters/recipes/undoing-changes.md diff --git a/docs/ONBOARDING.md b/docs/ONBOARDING.md index d06c570..05b2d28 100644 --- a/docs/ONBOARDING.md +++ b/docs/ONBOARDING.md @@ -68,7 +68,8 @@ files for the web version. ``` 01-introduction.md 06-expert-topics.md -02-building-blocks.md 07-playbook/ (17 recipe pages) +02-building-blocks.md 07-playbook.md + recipes/ (17 recipe pages) 03-branching-and-merging.md 08-appendix.md 04-remote-repositories.md 09-glossary.md 05-nested-repositories.md diff --git a/docs/PLAYBOOK.md b/docs/PLAYBOOK.md index 69c0e28..a25010c 100644 --- a/docs/PLAYBOOK.md +++ b/docs/PLAYBOOK.md @@ -33,7 +33,7 @@ Operational reference for common tasks in tutorial-git. - Place exercises at the end of the chapter under `## Exercises` - Each exercise has: **Task**, **Steps** (numbered), **Verify** - Exercises within a chapter use the same lab repository -- Cross-topic recipes go in `chapters/07-playbook/` +- Cross-topic recipes go in `chapters/recipes/` ### 1.4 Adding quiz questions From 65d924da22be3cdfa316d737ff38b69e21ad71c2 Mon Sep 17 00:00:00 2001 From: Branimir Georgiev Date: Sun, 26 Apr 2026 08:26:31 +0300 Subject: [PATCH 3/3] fix: use playbook/ in markdown links to match URL routing The remark link rewriter maps directory names to URLs. Since recipe pages have section: "playbook/..." in frontmatter, their URLs are /playbook/X/ not /recipes/X/. Markdown links must use playbook/ to produce correct URLs after rewriting. Co-Authored-By: Claude Opus 4.6 (1M context) --- chapters/07-playbook.md | 34 +++++++++++++++++----------------- chapters/09-glossary.md | 4 ++-- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/chapters/07-playbook.md b/chapters/07-playbook.md index 7a71309..4d43133 100644 --- a/chapters/07-playbook.md +++ b/chapters/07-playbook.md @@ -18,40 +18,40 @@ For definitions, see [Glossary](09-glossary.md). | Recipe | What you'll find | |--------|-----------------| -| [Undoing Changes](recipes/undoing-changes.md) | Discard, unstage, reset, revert, and recover lost commits | -| [Diffing](recipes/diffing.md) | Unstaged, staged, between branches, commits, and files | -| [History](recipes/history.md) | Log formatting, filtering by author, date, and path | -| [Stashing](recipes/stashing.md) | Save and restore work in progress | +| [Undoing Changes](playbook/undoing-changes.md) | Discard, unstage, reset, revert, and recover lost commits | +| [Diffing](playbook/diffing.md) | Unstaged, staged, between branches, commits, and files | +| [History](playbook/history.md) | Log formatting, filtering by author, date, and path | +| [Stashing](playbook/stashing.md) | Save and restore work in progress | ## Branching and Merging | Recipe | What you'll find | |--------|-----------------| -| [Branching](recipes/branching.md) | Create, delete, rename, and inspect branches | -| [Merging](recipes/merging.md) | Fast-forward, no-ff, squash, conflict resolution | -| [Rebasing](recipes/rebasing.md) | Linearize history and squash commits interactively | -| [Cherry-Picking](recipes/cherry-picking.md) | Apply individual commits across branches | +| [Branching](playbook/branching.md) | Create, delete, rename, and inspect branches | +| [Merging](playbook/merging.md) | Fast-forward, no-ff, squash, conflict resolution | +| [Rebasing](playbook/rebasing.md) | Linearize history and squash commits interactively | +| [Cherry-Picking](playbook/cherry-picking.md) | Apply individual commits across branches | ## Remote | Recipe | What you'll find | |--------|-----------------| -| [Remote Operations](recipes/remote-operations.md) | Push, pull, force push safely, sync forks | -| [Remote Management](recipes/remote-management.md) | Add, rename, remove remotes, switch URL, SSH setup | +| [Remote Operations](playbook/remote-operations.md) | Push, pull, force push safely, sync forks | +| [Remote Management](playbook/remote-management.md) | Add, rename, remove remotes, switch URL, SSH setup | ## Project Structure | Recipe | What you'll find | |--------|-----------------| -| [Tagging](recipes/tagging.md) | Create, push, and delete annotated tags | -| [Submodules](recipes/submodules.md) | Add, clone, update, and remove submodules | -| [Subtrees](recipes/subtrees.md) | Add, pull, push, and remove subtrees | +| [Tagging](playbook/tagging.md) | Create, push, and delete annotated tags | +| [Submodules](playbook/submodules.md) | Add, clone, update, and remove submodules | +| [Subtrees](playbook/subtrees.md) | Add, pull, push, and remove subtrees | ## Advanced | Recipe | What you'll find | |--------|-----------------| -| [Selectors](recipes/selectors.md) | Tilde, caret, double-dot, triple-dot, reflog refs | -| [Hooks](recipes/hooks.md) | Pre-commit, commit-msg, sharing hooks, bypassing | -| [Debugging](recipes/debugging.md) | Bisect, blame, and search commit history | -| [Configuration](recipes/configuration.md) | Identity, defaults, aliases, and diagnostics | +| [Selectors](playbook/selectors.md) | Tilde, caret, double-dot, triple-dot, reflog refs | +| [Hooks](playbook/hooks.md) | Pre-commit, commit-msg, sharing hooks, bypassing | +| [Debugging](playbook/debugging.md) | Bisect, blame, and search commit history | +| [Configuration](playbook/configuration.md) | Identity, defaults, aliases, and diagnostics | diff --git a/chapters/09-glossary.md b/chapters/09-glossary.md index 421bc51..d422c77 100644 --- a/chapters/09-glossary.md +++ b/chapters/09-glossary.md @@ -14,7 +14,7 @@ A reference of key Git terms used throughout this tutorial, with links to the ch | Annotated tag | A tag object with author, date, and message — stored in `.git/objects/` | [2](02-building-blocks.md) | | Bare repository | A repository with no working tree — only `.git/` internals | [2](02-building-blocks.md) | | Bisect | Binary search through commit history to find the commit that introduced a bug | [6](06-expert-topics.md) | -| Blame | Show which commit and author last modified each line of a file | [7](recipes/debugging.md) | +| Blame | Show which commit and author last modified each line of a file | [7](playbook/debugging.md) | | Blob | Object that stores the raw contents of a single file | [2](02-building-blocks.md) | | Branch | A movable pointer to a commit, stored in `.git/refs/heads/` | [2](02-building-blocks.md) | | Cherry-pick | Copy a single commit from one branch onto another, creating a new commit with a different hash | [3](03-branching-and-merging.md) | @@ -47,7 +47,7 @@ A reference of key Git terms used throughout this tutorial, with links to the ch | Remote-tracking branch | A read-only local reference that mirrors a remote branch (e.g. `origin/main`), updated by fetch and pull | [4](04-remote-repositories.md) | | Repository | The `.git/` directory containing all objects, references, and configuration for a project | [2](02-building-blocks.md) | | Reset | Move HEAD and optionally the branch tip to a different commit — `--soft`, `--mixed`, or `--hard` | [2](02-building-blocks.md) | -| Revert | Create a new commit that undoes a previous commit's changes without rewriting history | [7](recipes/undoing-changes.md) | +| Revert | Create a new commit that undoes a previous commit's changes without rewriting history | [7](playbook/undoing-changes.md) | | Squash merge | Combine all commits from a branch into a single change set on the target branch — no merge commit | [3](03-branching-and-merging.md) | | Stash | Save uncommitted changes temporarily so you can switch branches with a clean working tree | [3](03-branching-and-merging.md) | | Submodule | A reference to a specific commit in another repository — stores URL and hash, not files | [5](05-nested-repositories.md) |