Skip to content

document conflict resolution #290

@aspiers

Description

@aspiers

(Originally posted by @aspiers in #112 (comment))

It would be great if lieer's conflict resolution mechanism was documented a bit more comprehensively. Currently, the docs say of gmi sync:

This effectively does a push followed by a pull. Any conflicts detected with the remote in push will not be pushed. After the next pull has been run the conflicts should be resolved, overwriting the local changes with the remote changes.

but there are a few unanswered partially answered questions here, e.g.

  • How does lieer detect local changes which need pushing to the server?
    • Answer from this comment:

      a partial/incremental sync fetches the history in gmail since the last sync and applies those changes, it also pushes any changes since after a certain modification id in notmuch. there is no list of changes from notmuch, so those must be matched directly.

  • How does lieer detect conflicts?
  • How does lieer handle conflicts? E.g. if a mail is archived (removed from inbox) on the server and locally the unread label is removed, what happens? What about vice-versa, i.e. marked as read on server and archived locally?
  • Was lieer designed with the hub-and-spoke use case of two machines both synchronising to gmail at the same time?

If I get answers then maybe I can find time to submit a PR to the docs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions