diff --git a/.githooks/pre-commit b/.githooks/pre-commit index 79a83443..266a5e91 100755 --- a/.githooks/pre-commit +++ b/.githooks/pre-commit @@ -15,7 +15,7 @@ cd "$repo_root" # Keep the per-check "n. ... / ok: ..." rundown quiet on a passing commit; show # it only when something actually failed, so it's there to diagnose but doesn't # scroll past on every commit. -if output=$(bash advanced/tests/check_consistency.sh 2>&1); then +if output=$(bash beyond/tests/check_consistency.sh 2>&1); then status=0 else status=$? diff --git a/.github/workflows/build_beginner_slides.yml b/.github/workflows/build_beginner_slides.yml index 108449ce..49838b91 100644 --- a/.github/workflows/build_beginner_slides.yml +++ b/.github/workflows/build_beginner_slides.yml @@ -49,7 +49,7 @@ jobs: # so fork PRs don't need a fresh manual approval after every auto-push. git commit -m "Update beginner slides PDF [skip ci]" - # The sibling advanced-slides workflow can push to this same branch at + # The sibling beyond-slides workflow can push to this same branch at # the same time (both trigger on shared slides_theme/** changes), so # retry with a rebase if another push landed first. for attempt in 1 2 3 4 5; do diff --git a/.github/workflows/build_advanced_slides.yml b/.github/workflows/build_beyond_slides.yml similarity index 81% rename from .github/workflows/build_advanced_slides.yml rename to .github/workflows/build_beyond_slides.yml index b79b3096..e4d38ec1 100644 --- a/.github/workflows/build_advanced_slides.yml +++ b/.github/workflows/build_beyond_slides.yml @@ -3,10 +3,10 @@ name: Build Marp Slides PDF on: pull_request: paths: - - "advanced/slides/**" + - "beyond/slides/**" - "slides_theme/**" - - ".github/workflows/build_advanced_slides.yml" - - "!advanced/slides/slides_advanced.pdf" + - ".github/workflows/build_beyond_slides.yml" + - "!beyond/slides/slides_beyond.pdf" workflow_dispatch: @@ -14,7 +14,7 @@ permissions: contents: write concurrency: - group: build-advanced-slides-${{ github.ref }} + group: build-beyond-slides-${{ github.ref }} cancel-in-progress: true jobs: @@ -34,20 +34,20 @@ jobs: - name: Build diagrams and PDF # Same script authors run locally, so the committed PDF cannot drift. - run: ./advanced/slides/build.sh + run: ./beyond/slides/build.sh - name: Commit updated diagrams and PDF to PR branch run: | git config user.name "GitHub Action" git config user.email "action@github.com" - git add advanced/slides/images advanced/slides/slides_advanced.pdf + git add beyond/slides/images beyond/slides/slides_beyond.pdf if git diff --cached --quiet; then echo "Diagrams and PDF are already up to date." else # [skip ci] stops GitHub from queuing new workflow runs for this commit, # so fork PRs don't need a fresh manual approval after every auto-push. - git commit -m "Update advanced slides diagrams and PDF [skip ci]" + git commit -m "Update beyond slides diagrams and PDF [skip ci]" # The sibling beginner-slides workflow can push to this same branch at # the same time (both trigger on shared slides_theme/** changes), so diff --git a/.github/workflows/content_consistency.yml b/.github/workflows/content_consistency.yml index 620d3418..a85ceb6a 100644 --- a/.github/workflows/content_consistency.yml +++ b/.github/workflows/content_consistency.yml @@ -7,7 +7,7 @@ name: Content consistency on: pull_request: paths: - - "advanced/**" + - "beyond/**" - "beginner/**" - ".github/workflows/content_consistency.yml" @@ -20,4 +20,4 @@ jobs: - uses: actions/checkout@v5 - name: Check that slides, exercises and diagrams agree - run: bash advanced/tests/check_consistency.sh + run: bash beyond/tests/check_consistency.sh diff --git a/.github/workflows/publish_pages.yml b/.github/workflows/publish_pages.yml index 353f120d..a507b176 100644 --- a/.github/workflows/publish_pages.yml +++ b/.github/workflows/publish_pages.yml @@ -5,7 +5,7 @@ on: branches: - main paths: - - "advanced/slides/**" + - "beyond/slides/**" - "beginner/slides/**" - "slides_theme/**" - "pages/**" @@ -40,7 +40,7 @@ jobs: # Same scripts authors run locally, so the published site cannot drift. run: | ./beginner/slides/build.sh - ./advanced/slides/build.sh + ./beyond/slides/build.sh - name: Assemble site # The theme stylesheets reference the C2SM logo and the title background as @@ -48,16 +48,16 @@ jobs: # the site mirrors the repository layout, so keep the /slides/ depth # and ship slides_theme/images alongside. run: | - mkdir -p _site/slides_theme _site/advanced _site/beginner + mkdir -p _site/slides_theme _site/beyond _site/beginner cp pages/index.html _site/index.html cp -r slides_theme/images _site/slides_theme/ - cp -r advanced/slides _site/advanced/ + cp -r beyond/slides _site/beyond/ cp -r beginner/slides _site/beginner/ # Serve each deck at /slides/ instead of a long file name. - mv _site/advanced/slides/slides_advanced.html _site/advanced/slides/index.html + mv _site/beyond/slides/slides_beyond.html _site/beyond/slides/index.html mv _site/beginner/slides/slides_beginner.html _site/beginner/slides/index.html # Sources and build inputs have no business on the published site. diff --git a/.github/workflows/test_helpers.yml b/.github/workflows/test_helpers.yml index 1bfb2ca7..c82a164d 100644 --- a/.github/workflows/test_helpers.yml +++ b/.github/workflows/test_helpers.yml @@ -8,9 +8,9 @@ name: Test helper functions on: pull_request: paths: - - "advanced/helpers.sh" - - "advanced/examples/**" - - "advanced/tests/**" + - "beyond/helpers.sh" + - "beyond/examples/**" + - "beyond/tests/**" - "beginner/helpers.sh" - "beginner/examples/**" - "beginner/tests/**" @@ -49,8 +49,8 @@ jobs: git config --global user.email "action@github.com" git config --global init.defaultBranch main - - name: Test the advanced helpers - run: bash git-course/advanced/tests/test_helpers.sh + - name: Test the beyond helpers + run: bash git-course/beyond/tests/test_helpers.sh - name: Test the beginner helpers run: bash git-course/beginner/tests/test_helpers.sh diff --git a/.gitignore b/.gitignore index 74df64c6..0e853b11 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,6 @@ git-course_env/ check_requirements.log # HTML decks are built on demand by build.sh and published from CI, not committed. -advanced/slides/slides_advanced.html +beyond/slides/slides_beyond.html beginner/slides/slides_beginner.html _site/ diff --git a/Expert_Topics.md b/Expert_Topics.md index 79b2bb9f..5d701d8b 100644 --- a/Expert_Topics.md +++ b/Expert_Topics.md @@ -11,7 +11,7 @@ tutorial - none of it is needed for the two existing courses. - **[Git: The Basics](beginner)** - `init`, `add`, `commit`, `status`, `log`, branches, `switch`, `restore`, merging and merge conflicts, `.gitignore`, remotes, `push`, `pull`, `fetch`, and a first pull request. -- **[Git: Beyond the Basics](advanced)** - `log`/`blame`/`diff`/`show` in depth, submodules, +- **[Git: Beyond the Basics](beyond)** - `log`/`blame`/`diff`/`show` in depth, submodules, `.gitignore` in depth, `cherry-pick`, `rebase`, `stash`, `worktree`, hooks, `git lfs`, and the issue โ†’ fork โ†’ pull request โ†’ review workflow. @@ -59,7 +59,7 @@ Understanding what Git actually stores turns most of its odd behavior into commo - **`git bisect`** - binary search through history to find the commit that broke something. Manual (`git bisect start` / `good` / `bad`) and automated (`git bisect run