Apps/<your Dropbox app>/, endringer i Overleaf sendes til Dropbox, og endringer som gjøres i Dropbox, kommer tilbake til Overleaf.
Sette opp Dropbox-synkronisering
Opprett en app i Dropbox App Console, pålogget med Dropbox-kontoen som skal eie appen:- Klikk Create app, og fyll deretter ut siden:
- 1. Choose an API: velg Scoped access.
- 2. Choose the type of access you need: velg App folder, ikke Full Dropbox. Overleaf synkroniserer bare innenfor mappen til appen.
- 3. Name your app: skriv inn et navn, f.eks.
Overleaf. Det må være unikt på Dropbox. Prosjektene til hver bruker vises iApps/<name of your app>/i Dropbox-en deres, og dette navnet erDROPBOX_APP_NAMEnedenfor. - Klikk Create app. Appen åpnes på fanen Settings.
- På fanen Permissions, under Files and folders, krysser du av for
files.metadata.write,files.content.writeogfiles.content.read.account_info.readogfiles.metadata.readkrysses av sammen med dem og kan ikke fjernes. Ikke kryss av for andre tillatelser. - Klikk Submit i linjen nederst på fanen Permissions. Uten Submit lagres ikke tillatelsene, og Dropbox nekter å synkronisere filer for brukerne som kobler til kontoen sin.

Dropbox App Console: tillatelsene som skal krysses av, lagret med Submit
- På fanen Settings, under OAuth 2, skriver du inn
${OVERLEAF_SITE_URL}/user/dropbox/oauth/callbacki Redirect URIs og klikker deretter Add. Det er ikke nok å skrive inn URI-en: den lagres først når den vises i listen over feltet.

Dropbox App Console: skriv inn redirect-URI-en, og klikk deretter Add
- På fanen Settings, under Webhooks, skriver du inn
${OVERLEAF_SITE_URL}/dropbox/webhooki Webhook URIs og klikker Add her også. Dropbox kaller den med en gang for å kontrollere den, så Overleaf må allerede kjøre med innstillingene nedenfor og være tilgjengelig fra internett (se Webhook). Statusen viser Enabled når kontrollen er bestått.
DROPBOX_SYNC_PROXY_URL=http://10.0.0.1:10808. Det må være en vanlig HTTP/HTTPS-videresendingsproxy, og den må ikke bruke 127.0.0.1.
Opprett databaseindeksene
Kjør dette én gang, før brukere kobler til Dropbox-kontoene sine. Indeksene som Dropbox-synkroniseringen bruker, opprettes ikke automatisk, så uten dem må hvert synkroniseringsoppslag skanne hele samlingen. Toolkit-brukere: kjørbin/mongo. Docker Compose-brukere: kjør docker compose exec mongo mongosh sharelatex. Lim deretter inn:
dropboxEntities-migreringene i tools/migrations i stedet: 20220825160708_recreate_dropboxEntities sletter samlingen, noe som sletter synkroniseringstilstanden til alle brukere.Webhook
Dropbox varsler Overleaf om endringer i Dropbox via en webhook, slik at de vises i Overleaf i løpet av sekunder. Webhooken går til adressen til nettstedet ditt,${OVERLEAF_SITE_URL}/dropbox/webhook, og ingen ekstra port er nødvendig, men Dropbox må kunne nå den fra internett. Når du legger den til i App Console, kontrollerer Dropbox den med en gang.
Uten en webhook, for eksempel på en server som Dropbox ikke kan nå, sendes endringer i Overleaf fortsatt til Dropbox, men endringer i Dropbox kommer bare tilbake når en bruker klikker sync this project now i Dropbox-dialogboksen i editoren.
Slik fungerer synkroniseringen
- Tilkobling: når en bruker kobler til Dropbox-kontoen sin, sendes prosjektene brukeren eier, til Dropbox. Prosjekter som er delt med brukeren, vises i Dropbox ved neste endring.
- Overleaf til Dropbox: nye filer, navneendringer, flyttinger, slettinger og nye prosjektnavn sendes med en gang. Endringer i editoren sendes når Overleaf lagrer dem i lagringen sin, noen minutter etter at alle har forlatt prosjektet. For å sende dem tidligere klikker du sync this project now i Dropbox-dialogboksen i editoren (én gang per minutt).
- Dropbox til Overleaf: nye og endrede filer, nye mapper og slettinger i en prosjektmappe brukes på prosjektet. En ny mappe øverst i appmappen blir et nytt prosjekt. Hvis en prosjektmappe slettes i Dropbox, merkes prosjektet som slettet i Overleaf.
- Konflikter: når en fil endres begge steder samtidig, vinner den siste endringen. Dropbox kan beholde den andre versjonen som en conflicted copy.
- Samarbeidspartnere: samarbeidspartnere som kobler til Dropbox-en sin, får prosjektene som er delt med dem. Brukere med kun lesetilgang og korrekturlesere får prosjektet, men endringene deres i Dropbox synkroniseres ikke tilbake til Overleaf.
- Ignorerte filer: filer som Overleaf ikke synkroniserer, som byggeresultater (
.aux,.log, …),.DS_Storeeller virtuelle Python-miljøer, blir bare liggende i Dropbox.
Q&A
Hvorfor kan ikke en bruker koble til Dropbox-kontoen sin?
Hvorfor kan ikke en bruker koble til Dropbox-kontoen sin?
- En Dropbox-mappe som Overleaf ikke kjenner ennå, matches med et prosjekt etter navnet, så en bruker med prosjekter som har samme navn, blir bedt om å gi dem nye navn først. Navn sammenlignes uten å skille mellom store og små bokstaver, og arkiverte prosjekter og prosjekter i papirkurven teller også.
- En Dropbox-konto kan bare kobles til én Overleaf-konto.
Hvorfor ble en Dropbox-konto koblet fra?
Hvorfor ble en Dropbox-konto koblet fra?
Hvorfor er noen prosjektmapper nummerert, som «Thesis (1)»?
Hvorfor er noen prosjektmapper nummerert, som «Thesis (1)»?
Hva skjer når jeg sletter en prosjektmappe i Dropbox?
Hva skjer når jeg sletter en prosjektmappe i Dropbox?
- Hvis ingen andre prosjekter har navnet til mappen, merkes prosjektet som slettet i Overleaf. Filene og historikken beholdes.
- Hvis flere prosjekter har det navnet, kan ikke Overleaf avgjøre hvilket prosjekt mappen tilhørte. Overleaf kobler fra Dropbox-kontoen og viser et varsel som ber om å gi prosjektene nye navn. Gi prosjektene ulike navn før du sletter mappene deres i Dropbox.
- En nummerert mappe, som “Thesis (1)”, samsvarer ikke med noe prosjektnavn, så å slette den endrer ikke prosjektet i Overleaf. Klikk sync this project now i Dropbox-dialogboksen i editoren for å sende prosjektet til Dropbox igjen.
Hva skjer i Dropbox når jeg sletter et prosjekt i Overleaf?
Hva skjer i Dropbox når jeg sletter et prosjekt i Overleaf?
Hva skjer med endringer i Dropbox mens et prosjekt er arkivert eller ligger i papirkurven?
Hva skjer med endringer i Dropbox mens et prosjekt er arkivert eller ligger i papirkurven?
Hvorfor åpner Dropbox-lenken i editoren Dropbox-hjemmesiden?
Hvorfor åpner Dropbox-lenken i editoren Dropbox-hjemmesiden?
Apps/<app folder>/<project> på dropbox.com, slik som på Overleaf Cloud. Når Dropbox viser Apps-mappen sin med et oversatt navn, for eksempel 应用 på kinesisk, finner ikke lenken mappen, og Dropbox åpner hjemmesiden i stedet. Åpne prosjektmappen fra den oversatte Apps-mappen i Dropbox.Hvorfor mangler noen filer i et prosjekt i Dropbox?
Hvorfor mangler noen filer i et prosjekt i Dropbox?

