Hi,
aus dem Bauchgefühl heraus würde ich es so angehen:
Änderungsdatum der Ausgangsdatei mit der der Zieldatei vergleichen, dann hast du ein Delta das entweder positiv oder negativ ist. Ist es positiv, dann ist die Zieldatei neuer, wenns negativ ist, dann ist sie älter.
Damit kannst du schon mal prüfen welche Einträge neuer sind und somit hinzugekommen sein könnten, oder ob sie weggenommen worden sind.
Dann gehst du Zeile für Zeile durch die dir prüft ob es das was du in der Zieldatei oder Quelldatei hast (je nach Delta) schon in der Quelldatei / Zieldatei vorhanden ist, wenn nicht, wurde es hinzugefügt oder entfernt.
Trivial ist das ganze, wie ABT schon sagte, nicht - aber es wäre ein Denkanstoß wie man eine eigene Implementierung durchführen könnte.