Zum Hauptinhalt springen

Command Line

Run gimera from the root of your workspace — the directory containing gimera.yml.

gimera <command> [options]

The command set below is from gimera 0.7.107. Check gimera --help and gimera <command> --help for your installed version.

Commands

CommandPurpose
applyApplies the configuration from gimera.yml. The command you will use most
statusShows the current state of the workspace
addAdds a repository entry to gimera.yml
commitCollects changes in an integrated repo and commits them to a branch
cleanRemoves all git-dirty items
purgeRemoves all dirty items
abortAborts an in-progress operation
edit-patchEdit existing patch files
combine-patchCombine several patches into one
snapTake a named snapshot of one or more repos
snaprestoreRestore a snapshot
list-snapshotsList available snapshots
check-all-submodules-initializedVerify every submodule is initialised
completionShell completion

gimera apply

Clones or fetches each repository in gimera.yml, checks out the specified branch or commit, applies patches, and integrates the result into your workspace.

gimera apply

Repositories are given as positional arguments to limit the run to a subset:

gimera apply odoo addons_OCA/web

Options

OptionEffect
-u, --updatePull the latest versions from the remotes
-r, --recursiveProcess nested gimera.yml files, like submodule init
-s, --strictDo not force submodules of integrated repos to integrated
-I, --all-integratedTreat every repo as integrated, overriding the file
-S, --all-submoduleTreat every repo as submodule, overriding the file
-m, --missingOnly fetch paths that do not exist yet
-P, --no-patchesSkip patch application
--do-not-apply-patchesAlso skips patches
-f, --forceForce the operation
-n, --no-fetchDo not fetch from remotes
-C, --no-auto-commitDo not auto-commit the result
-SHA, --no-sha-updateDo not write resolved shas back to gimera.yml
-M, --migrate-changesKeep local changes to the repo
--remove-invalid-branchesDrop config entries whose branch no longer exists
-PC, --no-precommitsSkip pre-commit hooks
--clear-cacheClear gimera's cache
-v, --verboseDetailed output — use this when patches fail
--raise-exceptionRaise instead of exiting, for debugging
hinweis

-I is listed twice in gimera's own help — for both --all-integrated and --non-interactive. Prefer the long forms to avoid ambiguity.

Updating to the latest commits

There is no separate update command. Use apply with --update:

gimera apply -u

This pulls the latest from each remote, re-applies patches, and writes the new shas back into gimera.yml.

gimera status

Shows how the workspace compares with gimera.yml — which repositories are present, and what is dirty.

gimera status

gimera clean and gimera purge

Both remove dirty items from the workspace.

vorsicht

These discard local modifications to integrated repositories. Anything you changed inside an integrated repo and have not committed or captured as a patch is lost. Run gimera status first.

gimera commit

Integrated repositories are merged into your workspace, so ordinary git commit in the project root will not push changes back upstream. gimera commit does that:

gimera commit <repo> "<message>" [branch]
gimera commit <repo> "<message>" --preview

--preview (-p) shows what would be committed without doing it.

gimera add

Appends a repository to gimera.yml without editing it by hand. All four options are required:

gimera add \
--url git@github.com:OCA/web.git \
--branch 18.0 \
--path addons_OCA/web \
--type integrated

Snapshots

Snapshots capture the state of one or more repositories so you can experiment and roll back:

gimera snap before-upgrade
gimera list-snapshots
gimera snaprestore

Typical workflows

Set up a freshly cloned project

gimera apply -r

Add one addon repository and pull it in

gimera add -u https://github.com/OCA/web.git -b 18.0 -p addons_OCA/web -t integrated
gimera apply addons_OCA/web

Bring everything up to the latest commits

gimera status
gimera apply -u
git diff gimera.yml # review the sha changes before committing

Debug a failing patch

gimera apply -v <repo>

Tips

  • Run from the workspace root, where gimera.yml lives.
  • Pin shas so an unrelated upstream commit cannot break your build.
  • Use -v when a patch fails — the default output is not enough to diagnose it.
  • Review git diff gimera.yml after apply -u; those sha changes are your record of what moved.