Automatic synchronization conflict resolution
AssigneeMicrosoft Corporation
InventorsCynthia M. Hagan, Brian D. Remick
Life of this patent
Estimating the term…
Abstract
A determination is made at a first computing device of whether there is a synchronization conflict between a change to a first synchronized item at the first computing device and a change to a second synchronized item at a second computing device. If a synchronization conflict exists, rule-based conflict resolution is performed to automatically resolve the synchronization conflict. The rule-based conflict resolution is based at least in part on a type of the change made to the first synchronized item, a type of the change made to the second synchronized item, and a set of multiple rules. A notification of the resolution is then sent to the second computing device.
Claims20
A method implemented in a first computing device, the method comprising:
- determining there is a synchronization conflict between a change to a first synchronized item at the first computing device and a change to a second synchronized item at a second computing device;
- performing, in response to determining there is a synchronization conflict, rule-based conflict resolution to automatically resolve the synchronization conflict, the rule-based conflict resolution being based at least in part on a type of the change to the first synchronized item, a type of the change to the second synchronized item, and a set of multiple rules;
- and
- sending a notification of the rule-based conflict resolution to the second computing device.
One or more computer storage media having stored thereon multiple instructions that, when executed by one or more processors of a first computing device of multiple of computing devices, cause the one or more processors to:
- determine that a synchronization conflict is present between a change to a first synchronized item at the first computing device and a change to a second synchronized item at a second computing device of the multiple computing devices;
- attempt to become a resolver for the synchronization conflict, wherein one of the first computing device or the second computing device becomes the resolver for the synchronization conflict;
- if the first computing device does not become the resolver for the synchronization conflict, then incorporate into the first synchronized item a resolution of the synchronization conflict received from the resolver for the synchronization conflict;
- and
- if the first computing device does become the resolver for the synchronization conflict, then perform rule-based conflict resolution to resolve the synchronization conflict.
A method implemented in a first computing device, the method comprising:
- determining there is a synchronization conflict between a change to a first synchronized item at the first computing device and a change to a second synchronized item at a second computing device;
- performing rule-based conflict resolution to automatically resolve the synchronization conflict, including:
- if the synchronization conflict is an edit-delete conflict, then keeping the one of the first and second synchronized items that is an edit and discarding the one of the first and second synchronized items that is a delete,
- if the synchronization conflict is an add-delete conflict, then keeping the one of the first and second synchronized items that is an add and discarding the one of the first and second synchronized items that is a delete,
- if the synchronization conflict is a file edit-edit conflict, then merging the first and second synchronized items if the first and second synchronized items can be merged, otherwise keeping both the first and second synchronized items,
- if the synchronization conflict is a delete-delete conflict, then merging the first and second synchronized items,
- if the synchronization conflict is a rename-rename conflict, then keeping the one of the first and second synchronized items that is a most recent change, and
- otherwise keeping both the first and second synchronized items.
Dependencies are inferred from the claim text.