The Diff Match and Patch libraries offer robust algorithms to perform the operations required for synchronizing plain text
'com.sksamuel.diff:diff:1.1.10'
<dependency>
<groupId>com.sksamuel.diff</groupId>
<artifactId>diff</artifactId>
<version>1.1.10</version>
</dependency>
<dependency org="com.sksamuel.diff" name="diff" rev="1.1.10"/>
"com.sksamuel.diff", "diff", "1.1.10"