Scenario: pull-ahead
Only upstream changed since the clone.
- Monorepo (
vendor/a/): cloned atseed, no local changes since. - Upstream:
seed, then a commit, already fetched.
Output
setup.bash builds this state:
$ build_scenario scenario_pull_ahead
$ git splice status
On branch main
behind 1 vendor/a
$ git splice log
=== vendor/a (main)
> 6045a98 upstream change (Test <test@example.com>)
merge splices the change in as one ordinary commit, which also records the new synced commit in vendor/a/.splice:
$ git splice merge vendor/a
ok vendor/a: merged 6045a98
The monorepo's history stays linear, and upstream's commits never become part of it:
$ git log --format=%s
splice: merge vendor/a from main at 6045a98
add vendor/a
initial commit
$ git splice status
On branch main
up to date vendor/a