From ff4ca9d174914e72631bc61464041549ba9eebac Mon Sep 17 00:00:00 2001 From: Branimir Georgiev Date: Sat, 25 Apr 2026 14:35:28 +0300 Subject: [PATCH 01/11] docs: rename Subprojects to Nested Repositories, fix tab labels (#112) - Rename chapter 5: Subprojects -> Nested Repositories (file, title, section) - Fix tab labels: Branching -> Branching & Merging, Remotes -> Remote Repos, Expert -> Expert Topics, Subprojects -> Nested Repos - Update all cross-references in README, CLAUDE.md, glossary, onboarding Co-Authored-By: Claude Opus 4.6 (1M context) --- CLAUDE.md | 2 +- README.md | 2 +- astro-site/src/data/site.json | 8 ++++---- astro-site/src/pages/index.astro | 2 +- chapters/{05-subprojects.md => 05-nested-repositories.md} | 4 ++-- chapters/09-glossary.md | 4 ++-- docs/ONBOARDING.md | 2 +- docs/dev-journal.md | 2 +- 8 files changed, 13 insertions(+), 13 deletions(-) rename chapters/{05-subprojects.md => 05-nested-repositories.md} (99%) diff --git a/CLAUDE.md b/CLAUDE.md index 7974b4b..9cf67a5 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -34,7 +34,7 @@ chapters/ # SSG-agnostic tutorial content (canonical) 02-building-blocks.md 03-branching-and-merging.md 04-remote-repositories.md - 05-subprojects.md + 05-nested-repositories.md 06-expert-topics.md 07-playbook.md 08-appendix.md diff --git a/README.md b/README.md index c4677cb..3f7990e 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ directory. | 2 | [Building Blocks](chapters/02-building-blocks.md) | Repositories, objects, references, HEAD, tags | | 3 | [Branching and Merging](chapters/03-branching-and-merging.md) | Branches, merge strategies, rebase, cherry-pick, conflicts, stash | | 4 | [Remote Repositories](chapters/04-remote-repositories.md) | Clone, push, pull, fetch, remote tracking, forking workflows | -| 5 | [Subprojects](chapters/05-subprojects.md) | Submodules and subtrees | +| 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 | | 8 | [Appendix](chapters/08-appendix.md) | Merge strategies, SSH setup, Git clients, references | diff --git a/astro-site/src/data/site.json b/astro-site/src/data/site.json index e957637..0cf8074 100644 --- a/astro-site/src/data/site.json +++ b/astro-site/src/data/site.json @@ -7,10 +7,10 @@ { "label": "Home", "href": "/" }, { "label": "Introduction", "href": "/introduction/" }, { "label": "Building Blocks", "href": "/building-blocks/" }, - { "label": "Branching", "href": "/branching-and-merging/" }, - { "label": "Remotes", "href": "/remote-repositories/" }, - { "label": "Subprojects", "href": "/subprojects/" }, - { "label": "Expert", "href": "/expert-topics/" }, + { "label": "Branching & Merging", "href": "/branching-and-merging/" }, + { "label": "Remote Repos", "href": "/remote-repositories/" }, + { "label": "Nested Repos", "href": "/nested-repositories/" }, + { "label": "Expert Topics", "href": "/expert-topics/" }, { "label": "Playbook", "href": "/playbook/" }, { "label": "Appendix", "href": "/appendix/" }, { "label": "Glossary", "href": "/glossary/" } diff --git a/astro-site/src/pages/index.astro b/astro-site/src/pages/index.astro index 89a2ee8..cd6ba81 100644 --- a/astro-site/src/pages/index.astro +++ b/astro-site/src/pages/index.astro @@ -72,7 +72,7 @@ const headings = [ Clone, push, pull, fetch, remote tracking, forking workflows - Subprojects + Nested Repositories Submodules and subtrees for managing dependencies diff --git a/chapters/05-subprojects.md b/chapters/05-nested-repositories.md similarity index 99% rename from chapters/05-subprojects.md rename to chapters/05-nested-repositories.md index 14bfb92..77db48b 100644 --- a/chapters/05-subprojects.md +++ b/chapters/05-nested-repositories.md @@ -1,6 +1,6 @@ --- -title: "Subprojects" -section: "subprojects" +title: "Nested Repositories" +section: "nested-repositories" order: 5 --- diff --git a/chapters/09-glossary.md b/chapters/09-glossary.md index d01432e..c66aa10 100644 --- a/chapters/09-glossary.md +++ b/chapters/09-glossary.md @@ -49,8 +49,8 @@ A reference of key Git terms used throughout this tutorial, with links to the ch | Revert | Create a new commit that undoes a previous commit's changes without rewriting history | [7](07-playbook.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-subprojects.md) | -| Subtree | A full copy of another repository merged into a subdirectory of the parent project | [5](05-subprojects.md) | +| Submodule | A reference to a specific commit in another repository — stores URL and hash, not files | [5](05-nested-repositories.md) | +| Subtree | A full copy of another repository merged into a subdirectory of the parent project | [5](05-nested-repositories.md) | | Tag | A named reference to a commit — annotated (object with metadata) or lightweight (plain reference) | [2](02-building-blocks.md) | | Tree | Object that represents a directory — lists blobs and other trees with names and permissions | [2](02-building-blocks.md) | | Upstream | Conventional name for the original repository you forked from | [4](04-remote-repositories.md) | diff --git a/docs/ONBOARDING.md b/docs/ONBOARDING.md index 05768bc..3572f25 100644 --- a/docs/ONBOARDING.md +++ b/docs/ONBOARDING.md @@ -71,7 +71,7 @@ files for the web version. 02-building-blocks.md 07-playbook.md 03-branching-and-merging.md 08-appendix.md 04-remote-repositories.md 09-glossary.md -05-subprojects.md +05-nested-repositories.md ``` Chapter structure, writing conventions, and figure style rules are diff --git a/docs/dev-journal.md b/docs/dev-journal.md index 6935d54..80b542d 100644 --- a/docs/dev-journal.md +++ b/docs/dev-journal.md @@ -74,7 +74,7 @@ Architecture overview and chronological session log for tutorial-git. 02-building-blocks.md 03-branching-and-merging.md 04-remote-repositories.md ← NEW -05-subprojects.md ← NEW (split from deep internals) +05-nested-repositories.md ← NEW (split from deep internals) 06-expert-topics.md ← renamed, overhauled 07-playbook.md ← rewritten as recipes 08-appendix.md ← trimmed + SSH From 11aae1b5773f72bdff9a3c6e2aa11bbbcac3387d Mon Sep 17 00:00:00 2001 From: Branimir Georgiev Date: Sat, 25 Apr 2026 14:36:57 +0300 Subject: [PATCH 02/11] fix: hide horizontal scrollbar on tab navigation Co-Authored-By: Claude Opus 4.6 (1M context) --- astro-site/src/styles/global.css | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/astro-site/src/styles/global.css b/astro-site/src/styles/global.css index 324c081..3108952 100644 --- a/astro-site/src/styles/global.css +++ b/astro-site/src/styles/global.css @@ -268,10 +268,15 @@ a:hover { display: flex; padding: 0 var(--space-md); overflow-x: auto; + scrollbar-width: none; max-width: calc(var(--max-content) + 2 * var(--sidebar-width) + 2 * var(--space-xl)); margin: 0 auto; } +.site-tabs::-webkit-scrollbar { + display: none; +} + .site-tabs a { color: rgba(255, 255, 255, 0.75); font-size: var(--font-size-sm); From 4f1f6d27c23ea3551b84e2d0413c02ef661f06f1 Mon Sep 17 00:00:00 2001 From: Branimir Georgiev Date: Sat, 25 Apr 2026 14:39:13 +0300 Subject: [PATCH 03/11] fix: use flex-wrap instead of overflow scroll for tabs Prevents horizontal scrollbar flash on page load. Co-Authored-By: Claude Opus 4.6 (1M context) --- astro-site/src/styles/global.css | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/astro-site/src/styles/global.css b/astro-site/src/styles/global.css index 3108952..d903d7d 100644 --- a/astro-site/src/styles/global.css +++ b/astro-site/src/styles/global.css @@ -266,17 +266,12 @@ a:hover { .site-tabs { display: flex; + flex-wrap: wrap; padding: 0 var(--space-md); - overflow-x: auto; - scrollbar-width: none; max-width: calc(var(--max-content) + 2 * var(--sidebar-width) + 2 * var(--space-xl)); margin: 0 auto; } -.site-tabs::-webkit-scrollbar { - display: none; -} - .site-tabs a { color: rgba(255, 255, 255, 0.75); font-size: var(--font-size-sm); From 9fcfa016a6ae7248e5d32bb7920c4e04da3164cc Mon Sep 17 00:00:00 2001 From: Branimir Georgiev Date: Sat, 25 Apr 2026 14:40:24 +0300 Subject: [PATCH 04/11] fix: reduce tab padding and letter-spacing to fit in one row Co-Authored-By: Claude Opus 4.6 (1M context) --- astro-site/src/styles/global.css | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/astro-site/src/styles/global.css b/astro-site/src/styles/global.css index d903d7d..d66aec8 100644 --- a/astro-site/src/styles/global.css +++ b/astro-site/src/styles/global.css @@ -266,7 +266,6 @@ a:hover { .site-tabs { display: flex; - flex-wrap: wrap; padding: 0 var(--space-md); max-width: calc(var(--max-content) + 2 * var(--sidebar-width) + 2 * var(--space-xl)); margin: 0 auto; @@ -277,8 +276,8 @@ a:hover { font-size: var(--font-size-sm); font-weight: 500; text-transform: uppercase; - letter-spacing: 0.04em; - padding: 0 var(--space-md); + letter-spacing: 0.02em; + padding: 0 var(--space-sm); height: var(--tab-height); display: flex; align-items: center; From 7de7fee7188730c7208355e7894dead3a3118d78 Mon Sep 17 00:00:00 2001 From: Branimir Georgiev Date: Sat, 25 Apr 2026 14:41:44 +0300 Subject: [PATCH 05/11] fix: add overflow hidden to tabs bar to prevent scrollbar flash Co-Authored-By: Claude Opus 4.6 (1M context) --- astro-site/src/styles/global.css | 1 + 1 file changed, 1 insertion(+) diff --git a/astro-site/src/styles/global.css b/astro-site/src/styles/global.css index d66aec8..b296f41 100644 --- a/astro-site/src/styles/global.css +++ b/astro-site/src/styles/global.css @@ -258,6 +258,7 @@ a:hover { z-index: 99; background: var(--color-primary-dark); box-shadow: 0 1px 0 rgba(255, 255, 255, 0.1) inset; + overflow: hidden; } .nav-toggle { From 3225d8dbc659ed617800b302895cfb95222a8089 Mon Sep 17 00:00:00 2001 From: Branimir Georgiev Date: Sat, 25 Apr 2026 14:43:12 +0300 Subject: [PATCH 06/11] fix: inline overflow hidden on tabs bar to prevent FOUC scrollbar Co-Authored-By: Claude Opus 4.6 (1M context) --- astro-site/src/components/Header.astro | 2 +- astro-site/src/styles/global.css | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/astro-site/src/components/Header.astro b/astro-site/src/components/Header.astro index 9cb8066..cb4b7a1 100644 --- a/astro-site/src/components/Header.astro +++ b/astro-site/src/components/Header.astro @@ -30,7 +30,7 @@ const base = import.meta.env.BASE_URL; -
+