Gdy Dropbox napotka na komputerze plik inny niż wersja w chmurze tego pliku, o którym wie, jak decyduje, czy powinien je zsynchronizować, zastępując plik lokalny plikiem w chmurze, czy synchronizując, nadpisując plik w chmurze plik lokalny?
Aby ponownie sformułować:
Jeśli kopia serwera i kopia lokalna pliku są różne,
a jeśli program Dropbox zostanie uruchomiony i zakończy synchronizację,
wtedy te dwa pliki będą takie same.
Te dwa pliki będą również identyczne z jednym ze starych plików. Moje pytanie brzmi: która --- stara kopia serwera lub stara kopia lokalna? Jak się decyduje?
Odpowiedzi:
Nie znam szczegółów technicznych, ale mam sytuację, w której ja i mój asystent prowadzimy wspólny dropbox z dwoma różnymi komputerami włączanymi i wyłączanymi w różnych momentach.
Odpowiedź na twoje pytanie brzmi: kiedy łączysz się z chmurą, Dropbox wie (jakoś), że wersja aktualnie w chmurze została pierwotnie zsynchronizowana z twoim komputerem. Jeśli więc twoja wersja komputera jest inna, jest to wersja, która zostanie zsynchronizowana z chmurą.
Jeśli dwa komputery (powiedzmy A i B) używają tego samego dropboksa, a każdy dokonuje zmian w trybie offline, pierwszy komputer zostanie włączony (powiedzmy, że to komputer A) wygeneruje synchronizację swojej aktualizacji z chmurą. Więc teraz będzie taka sama wersja (zawierająca aktualizację A) w A i Cloud.
Gdy komputer B zostanie włączony, Dropbox zda sobie sprawę, że wersja pliku B komputera nie tylko różni się od bieżącej wersji chmury (co jest normalne), ale różni się od ostatniej synchronizacji Dropbox z nim. Gdyby więc zsynchronizować plik B z wersją A, zmiany B zostałyby utracone. Dropbox tworzy kopię wersji B i dodaje do nazwy „konflikt pliku B”. Oryginalny plik B jest następnie synchronizowany z aktualizacjami A. Konflikt pliku, zawierający aktualizacje B, jest następnie synchronizowany z chmurą i z powrotem do A.
Usunięcia i konflikty wynikające z synchronizacji selektywnej są obsługiwane w podobny sposób
Konflikt powstaje również, jeśli jeden z komputerów nie zamknie pliku przed wyłączeniem zasilania. Synchronizacja nie występuje w otwartym pliku, więc w tym przypadku aktualizacje B będą synchronizowane, a otwarty plik A zakończy się konfliktem. To może być ogromny problem z harmonizacją, ale to nasza wina, a nie Dropbox.
Mam nadzieję że to pomoże.
źródło
Mam częściowe informacje, które zaczynają odpowiadać na to pytanie. Nie jestem pewien, jak przydatne jest to dla doświadczonych użytkowników, ale wiem, że nowi użytkownicy, tacy jak ja, uznają ten raport za pomocny.
Nawiasem mówiąc, wypracowanie tego sprawia, że jeszcze bardziej zastanawiam się, jak bardzo podstawowe pytanie nie ma żadnej oficjalnej ani autorytatywnej odpowiedzi. Brak dostępnej dokumentacji lub dyskusji mówi mi, że użytkownicy Dropbox są w porządku przyjmować wszystko, co Dropbox faktycznie robi, zgodnie z oczekiwaniami w takich okolicznościach. (tj. nie powiedziałbym nawet, że użytkownicy mają konkretne oczekiwania, że utrzymają Dropbox)
Przykłady zachowania Dropbox:
W moich przykładach komputer A i komputer B nigdy nie są jednocześnie włączone. Wyobraź sobie, że pojedynczy użytkownik nie współpracuje w domu i pracy, a każdy komputer jest wyłączany przed powrotem do drugiego.
Co się stanie, gdy folder Dropbox jednego komputera nie będzie identyczny z folderem Dropbox w chmurze? Dla maksymalnej przejrzystości wolę sobie wyobrazić, jak
dropbox.exe
zareaguje, gdy jeden komputer ma pusty folder Dropbox. Traktujedropbox.exe
te brakujące pliki jako „usunięcia” (co oznacza, że usunie je z folderu Dropbox w chmurze) lub „nieaktualne” (co oznacza, że utworzy nowe kopie ich w lokalnym folderze Dropbox).Zacznij od sytuacji, w której zachowanie jest oczywiste: komputer A jest włączony, a komputer B jest wyłączony. Jeśli
dropbox.exe
działa, a zmiany są wprowadzane w A, są one propagowane do folderu w chmurze, a nie odwrotnie. Tak więc w tej chwili, jeśli folder A zostanie opróżniony, te brakujące pliki / foldery zostaną uznane za „usunięcia”, a folder w chmurze zostanie opróżniony.Załóżmy, że B ma pusty folder Dropbox, a A tworzy pliki i synchronizuje je z folderem Dropbox w chmurze. Jeśli przejdziemy na komputer B, sytuacja
dropbox.exe
będzie interpretować pusty folder skrzynki B jako „nieaktualny”, a nowe kopie z folderu w chmurze zostaną utworzone na B.Teraz mniej oczywiste: załóżmy, że dokonamy pewnych zmian w B i zsynchronizujemy te zmiany z folderem dropbox w chmurze. Jeśli przejdziemy na komputer A i --- bez pierwszego uruchomienia
dropbox.exe
--- usuniemy rzeczy z folderu dropbox A, co będziedropbox.exe
potem działać? W tej sytuacjidropbox.exe
zinterpretuje brakujące pliki / foldery jako nowe usunięcia, które powinny być propagowane do folderu dropbox w chmurze.Uważam za mylące, że w sytuacjach 2 i 3 zostałeś
dropbox.exe
włączony i napotkałeś ten sam „świeży” stan na nowym komputerze, który różni się od folderu w chmurze, ale będzie działał inaczej.Jeśli chcesz wymyślić regułę, która wyjaśnia, jak
dropbox.exe
działa, najwyraźniej nie możesz założyć, że jest to funkcja trzech zmiennych: (1) to, co widzi teraz na komputerze, (2) to, co widzi w folderze w chmurze, i (3 ), który komputer był ostatnio synchronizowany z folderem w chmurze. (!!!)Być może dodatkową zmienną jest to, że Dropbox pamięta, co każdy komputer ostatnio synchronizował z folderem w chmurze. W sytuacji 2 możemy założyć, że przy ostatniej synchronizacji komputer B zsynchronizował pusty folder. W sytuacji 3 Dropbox pamięta, że kiedy ostatni raz komputer A synchronizował, zsynchronizował folder inny niż ten, który obecnie znajduje się w folderze.
źródło
dropbox.exe
tylko o sprawdzenie katalogu offline i online. Podobnie jak w ostatnim akapicie, dropbox prowadzi rejestr każdego pliku przechowywanego lokalnie i online, dzięki czemu dokładnie wie, kiedy / co (a kiedy / co nie) do synchronizacji. Spójrz na moje skrzynki referencyjnej-dir inC:\Users\<name>\AppData\Roaming\Dropbox
. Widzisz wiele.dbx
plików, w których dropbox przechowuje te informacje (nie tylko daty, ale także sumy kontrolne itp.). (Usuń te pliki, a Dropbox poważnie zepsuje Ci katalog Dropbox online i offline;)Z Dropbox FAQ :
Jak to robi?
To również jest wspomniane na ich stronie :
źródło