unisonweb/unison

externally updated `_head` isn't detected in `ucm`

Open

#886 aberto em 23 de out. de 2019

Ver no GitHub
 (0 comments) (0 reactions) (0 assignees)Haskell (304 forks)batch import
bugcodebase-manager / ucmhelp wanted

Métricas do repositório

Stars
 (6.624 stars)
Métricas de merge de PR
 (Mesclagem média 10d 2h) (5 fundiu PRs em 30d)

Description

This can cause weirdness if there are two instances of ucm running backed by the same codebase.

I think the code to do anything about it is commented out (which we should fix) but there is code to display a warning, which also isn't firing.

If the external change leaves multiple heads, ucm should first:

  • issue a message to the console, including the short hashes of the previous loopstate root hash, and of the newly detected heads (see reflog implementation for example of printing short hashes).
  • merge the multiple heads (Branch.merge?)

Then (multiple heads or single head), ucm should:

  • write the external change to the reflog
  • update LoopState

Guia do colaborador