First fetch failed
In the same state, a fresh clone after init, the first
fetch fails, e.g. without network. merge never fetches, so it can only
tell a fetched upstream from one never fetched here. A failed fetch
leaves the upstream as unknown as before, and merge still says so,
rather than that the upstream has no branch and there is nothing to
merge.
Output
setup.bash builds this state:
$ build_scenario scenario_init_then_cloned https://git.example.com/a.git
GIT_ALLOW_PROTOCOL=none lets Git use no protocol at all, so the fetch
fails as it would without network:
$ GIT_ALLOW_PROTOCOL=none git splice fetch lib/a
fatal: transport 'file' not allowed
!! lib/a fetch failed
!! Failed: lib/a
[1]
$ git splice merge lib/a
?? lib/a: not fetched yet -- run 'git splice fetch lib/a' first
!! Failed: lib/a
[1]
Once a fetch succeeds, merge knows the upstream, and that it has
just the two commits the folder has already:
$ git splice fetch lib/a
ok lib/a fetched
$ git splice merge lib/a
ok lib/a: nothing to merge