unisonweb/unison

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

Open

#886 建立於 2019年10月23日

在 GitHub 查看
 (0 留言) (0 反應) (0 負責人)Haskell (6,624 star) (304 fork)batch import
bugcodebase-manager / ucmhelp wanted

描述

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

貢獻者指南