Use -m multiple times to migrate several paths in one operation:
./gitmux.sh \-rsource-t dest \-m'src/lib:packages/lib'\-m'tests/lib:packages/lib/tests'\-m'docs:packages/lib/docs'\-s
Use \: to escape literal colons in paths. Empty string or . means root.
Two -m mappings may share the same destination as long as their sources differ — gitmux allows it (with a warning) so you can reassemble a file’s history across renames, e.g. mapping both old/name.py and new/name.py to dot.py.
Destination Options
Option
Description
-b <branch>
Target branch in destination (default: main)
-c
Create destination repo if missing (requires gh)
Rebase Options
Option
Description
-X <strategy>
theirs | ours | patience (default: theirs)
-o <options>
Custom git rebase options (mutually exclusive with -X)
-i
Interactive rebase mode
By default the rebase preserves each commit’s original authorship date as its committer date (--committer-date-is-author-date), so an extracted history keeps its original timeline instead of collapsing to the moment gitmux ran (GitHub orders and groups commits by committer date). Set the PRESERVE_COMMITTER_DATES=false environment variable to use git’s default (committer date = now).