Apps/<your Dropbox app>/, zmiany w Overleaf są wysyłane do Dropbox, a zmiany wprowadzone w Dropbox wracają do Overleaf.
Konfiguracja synchronizacji z Dropbox
Utwórz aplikację w Dropbox App Console, zalogowawszy się na konto Dropbox, które będzie właścicielem aplikacji:- Kliknij Create app, a następnie wypełnij stronę:
- 1. Choose an API: wybierz Scoped access.
- 2. Choose the type of access you need: wybierz App folder, a nie Full Dropbox. Overleaf synchronizuje tylko zawartość folderu aplikacji.
- 3. Name your app: wpisz nazwę, np.
Overleaf. Musi być unikalna w Dropbox. Projekty każdego użytkownika pojawiają się w jego Dropbox wApps/<name of your app>/, a ta nazwa toDROPBOX_APP_NAMEponiżej. - Kliknij Create app. Aplikacja otworzy się na karcie Settings.
- Na karcie Permissions, w sekcji Files and folders, zaznacz
files.metadata.write,files.content.writeifiles.content.read.account_info.readifiles.metadata.readzostaną zaznaczone razem z nimi i nie można ich odznaczyć. Nie zaznaczaj innych uprawnień. - Kliknij Submit na pasku u dołu karty Permissions. Bez kliknięcia Submit uprawnienia nie zostaną zapisane, a Dropbox odmówi synchronizacji plików użytkownikom, którzy połączą swoje konto.

Dropbox App Console: uprawnienia do zaznaczenia, zapisane przyciskiem Submit
- Na karcie Settings, w sekcji OAuth 2, wpisz
${OVERLEAF_SITE_URL}/user/dropbox/oauth/callbackw polu Redirect URIs, a następnie kliknij Add. Samo wpisanie adresu URI nie wystarczy: zostaje on zapisany dopiero wtedy, gdy pojawi się na liście nad polem.

Dropbox App Console: wpisz adres URI przekierowania, a następnie kliknij Add
- Na karcie Settings, w sekcji Webhooks, wpisz
${OVERLEAF_SITE_URL}/dropbox/webhookw polu Webhook URIs, a następnie również kliknij Add. Dropbox od razu wywołuje ten adres, aby go sprawdzić, więc Overleaf musi już działać z poniższymi ustawieniami i być osiągalny z internetu (zobacz Webhook). Po pomyślnym sprawdzeniu jego stan zmienia się na Enabled.
DROPBOX_SYNC_PROXY_URL=http://10.0.0.1:10808. Musi to być standardowy serwer proxy przekazujący HTTP/HTTPS i nie może używać 127.0.0.1.
Utwórz indeksy bazy danych
Uruchom to raz, zanim użytkownicy połączą swoje konta Dropbox. Indeksy używane przez synchronizację z Dropbox nie są tworzone automatycznie, więc bez nich każde wyszukiwanie podczas synchronizacji skanuje całą kolekcję. Użytkownicy Toolkit: uruchombin/mongo. Użytkownicy Docker Compose: uruchom docker compose exec mongo mongosh sharelatex. Następnie wklej:
dropboxEntities z tools/migrations: 20220825160708_recreate_dropboxEntities usuwa kolekcję, co kasuje stan synchronizacji każdego użytkownika.Webhook
Dropbox informuje Overleaf o zmianach w Dropbox za pomocą webhooka, dzięki czemu pojawiają się one w Overleaf w ciągu kilku sekund. Webhook jest kierowany na adres Twojej witryny,${OVERLEAF_SITE_URL}/dropbox/webhook, i nie wymaga dodatkowego portu, ale Dropbox musi mieć do niego dostęp z internetu. Gdy dodasz go w App Console, Dropbox od razu go sprawdza.
Bez webhooka, na przykład na serwerze niedostępnym dla Dropbox, zmiany w Overleaf są nadal wysyłane do Dropbox, ale zmiany w Dropbox wracają tylko wtedy, gdy użytkownik kliknie sync this project now w oknie Dropbox w edytorze.
Jak działa synchronizacja
- Łączenie: gdy użytkownik połączy swoje konto Dropbox, projekty, których jest właścicielem, są wysyłane do Dropbox. Projekty udostępnione mu pojawiają się w Dropbox przy ich następnej zmianie.
- Z Overleaf do Dropbox: nowe pliki, zmiany nazw, przeniesienia, usunięcia i zmiany nazw projektów są wysyłane natychmiast. Zmiany w edytorze są wysyłane, gdy Overleaf zapisze je w swoim magazynie, kilka minut po tym, jak wszyscy opuszczą projekt. Aby wysłać je wcześniej, kliknij sync this project now w oknie Dropbox w edytorze (raz na minutę).
- Z Dropbox do Overleaf: nowe i zmienione pliki, nowe foldery oraz usunięcia w folderze projektu są stosowane w projekcie. Nowy folder na najwyższym poziomie folderu aplikacji staje się nowym projektem. Usunięcie folderu projektu w Dropbox oznacza projekt jako usunięty w Overleaf.
- Konflikty: gdy plik zmieni się w obu miejscach jednocześnie, wygrywa ostatnia zmiana. Dropbox może zachować drugą wersję jako conflicted copy.
- Współpracownicy: współpracownicy, którzy połączą swój Dropbox, otrzymują udostępnione im projekty. Osoby z dostępem tylko do odczytu i recenzenci otrzymują projekt, ale ich zmiany w Dropbox nie są synchronizowane z powrotem do Overleaf.
- Ignorowane pliki: pliki, których Overleaf nie synchronizuje, takie jak wyniki kompilacji (
.aux,.log, …),.DS_Storeczy środowiska wirtualne Python, pozostają tylko w Dropbox.
Pytania i odpowiedzi
Dlaczego użytkownik nie może połączyć swojego konta Dropbox?
Dlaczego użytkownik nie może połączyć swojego konta Dropbox?
- Folder Dropbox, którego Overleaf jeszcze nie zna, jest dopasowywany do projektu według nazwy, więc użytkownik, którego projekty mają wspólną nazwę, zostanie poproszony o wcześniejszą zmianę ich nazw. Nazwy są porównywane bez rozróżniania wielkości liter, a projekty zarchiwizowane i przeniesione do kosza również są brane pod uwagę.
- Konto Dropbox można połączyć tylko z jednym kontem Overleaf.
Dlaczego konto Dropbox zostało odłączone?
Dlaczego konto Dropbox zostało odłączone?
Czy mogę zmienić nazwę folderu projektu w Dropbox?
Czy mogę zmienić nazwę folderu projektu w Dropbox?
Dlaczego niektóre foldery projektów są ponumerowane, np. „Thesis (1)”?
Dlaczego niektóre foldery projektów są ponumerowane, np. „Thesis (1)”?
Co się stanie, gdy usunę folder projektu w Dropbox?
Co się stanie, gdy usunę folder projektu w Dropbox?
- Jeśli żaden inny projekt nie ma nazwy tego folderu, projekt zostaje oznaczony w Overleaf jako usunięty. Jego pliki i historia są zachowywane.
- Jeśli tę nazwę ma kilka projektów, Overleaf nie jest w stanie określić, do którego z nich należał folder. Odłącza konto Dropbox i wyświetla powiadomienie z prośbą o zmianę nazw projektów. Nadaj projektom różne nazwy przed usunięciem ich folderów w Dropbox.
- Ponumerowany folder, taki jak „Thesis (1)”, nie pasuje do żadnej nazwy projektu, więc jego usunięcie nie zmienia projektu w Overleaf. Kliknij sync this project now w oknie Dropbox w edytorze, aby ponownie wysłać projekt do Dropbox.
Co dzieje się w Dropbox, gdy usunę projekt w Overleaf?
Co dzieje się w Dropbox, gdy usunę projekt w Overleaf?
Co dzieje się ze zmianami w Dropbox, gdy projekt jest zarchiwizowany lub w koszu?
Co dzieje się ze zmianami w Dropbox, gdy projekt jest zarchiwizowany lub w koszu?
Dlaczego link do Dropbox w edytorze otwiera stronę główną Dropbox?
Dlaczego link do Dropbox w edytorze otwiera stronę główną Dropbox?
Apps/<app folder>/<project> na dropbox.com, tak jak w Overleaf Cloud. Gdy Dropbox wyświetla folder Apps pod przetłumaczoną nazwą, na przykład 应用 po chińsku, link nie znajduje folderu i Dropbox otwiera zamiast tego swoją stronę główną. Otwórz folder projektu z przetłumaczonego folderu Apps w Dropbox.Dlaczego w Dropbox brakuje niektórych plików projektu?
Dlaczego w Dropbox brakuje niektórych plików projektu?

