Czy programy do synchronizacji, takie jak Dropbox, zwykle śledzą zmiany w plikach, porównując bajty po bajtach, używając skrótów lub używając diff
/ zachowując lokalne dzienniki zatwierdzeń, takie jak kontrola wersji, czy co?
synchronization
diff
Mcandre
źródło
źródło
Aby porównać pliki, musisz porównać każdy bajt - jak inaczej zauważyłbyś zmianę jednej bajtu?
W rzeczywistości odczytujesz bloki bajtów i obliczasz wartość skrótu, a następnie porównujesz listę skrótów. Dobrym przykładem jest „ rsync ”
O ile wiem, dropbox deduplikuje tylko całe pliki, więc obliczę skrót całego pliku, aby sprawdzić z tego samego pliku
źródło
Na przykład .NET ma klasę FileSystemWatcher. Jestem pewien, że inne języki niskiego poziomu i środowiska wykonawcze mogą zapewnić podobne możliwości.
źródło