submodule-with-history
submodule
parent with 4 commits + vendor/lib submodule pinned at its 4-commit HEAD
Description
A parent repo on `main` with 4 commits, including the addition of a
submodule mounted at `vendor/lib`. The submodule itself has 4 commits
of its own, tracks branch `main`, and is currently clean (the parent
pin matches the submodule's HEAD).
Useful for testing:
- submodule metadata loaders (`.gitmodules` + `git submodule status`)
- the submodule inspector side-panel (name / pinned / tracking)
- recursive submodule navigation: `Enter` on the submodule row
should drill into the submodule's history view, where the user
can navigate its 4 commits as if `coco ui` were launched from
`vendor/lib`. `Esc` / `<` pops back to the parent.
No remote is configured on either side. The URL recorded in
`.gitmodules` points at the temp dir the submodule was cloned from
(now removed) — read-only operations work fine offline, but do not
run `git submodule update --remote` or `git submodule sync`. Contracts
- parent main has 4 commits
- main is checked out
- .gitmodules registers vendor/lib with branch = main
- vendor/lib is a clean submodule (pin matches HEAD)
- vendor/lib has 4 commits of its own
- parent worktree is clean
Tags
Branches
main Use it
import { spinUpScenario } from '@gfargo/git-scenarios'
const repo = await spinUpScenario('submodule-with-history') npx git-scenarios create submodule-with-history import { describeWithScenario } from '@gfargo/git-scenarios/jest'
describeWithScenario('submodule-with-history', (getRepo) => {
it('should have the expected state', async () => {
const repo = getRepo()
// your assertions here
})
}) Commit graph
* 8554d0b (HEAD -> main) feat: integrate vendor/lib into entry point
* 1660bc7 chore: add vendor/lib submodule
* 9326672 feat: app shell
* 5f49d93 chore: initial scaffold