Apps/<your Dropbox app>/ içinde bir klasör olarak görünür, Overleaf’teki değişiklikler Dropbox’a gönderilir ve Dropbox’ta yapılan değişiklikler Overleaf’e geri gelir.
Dropbox Senkronizasyonunu Kurma
Uygulamanın sahibi olacak Dropbox hesabıyla oturum açarak Dropbox App Console üzerinde bir uygulama oluşturun:- Create app düğmesine tıklayın, ardından sayfayı doldurun:
- 1. Choose an API: Scoped access seçeneğini seçin.
- 2. Choose the type of access you need: Full Dropbox değil, App folder seçeneğini seçin. Overleaf yalnızca uygulamanın klasörü içinde senkronizasyon yapar.
- 3. Name your app: bir ad girin, ör.
Overleaf. Ad Dropbox’ta benzersiz olmalıdır. Her kullanıcının projeleri Dropbox’ındaApps/<name of your app>/içinde görünür ve bu ad aşağıdakiDROPBOX_APP_NAMEdeğeridir. - Create app düğmesine tıklayın. Uygulama Settings sekmesinde açılır.
- Permissions sekmesinde, Files and folders altında
files.metadata.write,files.content.writevefiles.content.readseçeneklerini işaretleyin.account_info.readvefiles.metadata.readbunlarla birlikte işaretlenir ve işaretleri kaldırılamaz. Başka izinleri işaretlemeyin. - Permissions sekmesinin altındaki çubukta Submit düğmesine tıklayın. Submit olmadan izinler kaydedilmez ve Dropbox, hesabını bağlayan kullanıcılar için dosyaları senkronize etmeyi reddeder.

Dropbox App Console: işaretlenecek izinler, Submit ile kaydedilir
- Settings sekmesinde, OAuth 2 altında Redirect URIs alanına
${OVERLEAF_SITE_URL}/user/dropbox/oauth/callbackgirin, ardından Add düğmesine tıklayın. URI’yi yazmak yeterli değildir: URI ancak alanın üstündeki listede göründüğünde kaydedilmiş olur.

Dropbox App Console: yönlendirme URI'sini girin, ardından Add düğmesine tıklayın
- Settings sekmesinde, Webhooks altında Webhook URIs alanına
${OVERLEAF_SITE_URL}/dropbox/webhookgirin, ardından yine Add düğmesine tıklayın. Dropbox bu adresi doğrulamak için hemen çağırır; bu nedenle Overleaf aşağıdaki ayarlarla zaten çalışıyor ve internetten erişilebilir olmalıdır (bkz. Webhook). Doğrulama başarılı olduğunda durumu Enabled olarak görünür.
DROPBOX_SYNC_PROXY_URL=http://10.0.0.1:10808. Bu, standart bir HTTP/HTTPS ileri proxy olmalı ve 127.0.0.1 kullanmamalıdır.
Veritabanı dizinlerini oluşturma
Bunu, kullanıcılar Dropbox hesaplarını bağlamadan önce bir kez çalıştırın. Dropbox senkronizasyonunun kullandığı dizinler otomatik olarak oluşturulmaz; bu nedenle bunlar olmadan her senkronizasyon araması koleksiyonun tamamını tarar. Toolkit kullanıcıları:bin/mongo komutunu çalıştırın. Docker Compose kullanıcıları: docker compose exec mongo mongosh sharelatex komutunu çalıştırın. Ardından şunu yapıştırın:
tools/migrations içindeki dropboxEntities geçişlerini çalıştırmayın: 20220825160708_recreate_dropboxEntities koleksiyonu siler ve bu da her kullanıcının senkronizasyon durumunu siler.Webhook
Dropbox, Dropbox’taki değişiklikleri Overleaf’e bir webhook ile bildirir; böylece değişiklikler saniyeler içinde Overleaf’te görünür. Webhook sitenizin adresine, yani${OVERLEAF_SITE_URL}/dropbox/webhook adresine gider ve ek bir port gerekmez, ancak Dropbox’ın bu adrese internetten erişebilmesi gerekir. Webhook’u App Console’da eklediğinizde Dropbox onu hemen doğrular.
Webhook olmadan, örneğin Dropbox’ın erişemediği bir sunucuda, Overleaf’teki değişiklikler yine Dropbox’a gönderilir, ancak Dropbox’taki değişiklikler yalnızca bir kullanıcı düzenleyicinin Dropbox iletişim kutusunda sync this project now seçeneğine tıkladığında geri gelir.
Senkronizasyon nasıl çalışır
- Bağlama: bir kullanıcı Dropbox hesabını bağladığında, sahibi olduğu projeler Dropbox’a gönderilir. Kendisiyle paylaşılan projeler, bir sonraki değişiklikleriyle birlikte Dropbox’ta görünür.
- Overleaf’ten Dropbox’a: yeni dosyalar, yeniden adlandırmalar, taşımalar, silmeler ve proje yeniden adlandırmaları hemen gönderilir. Düzenleyicideki düzenlemeler, Overleaf bunları depolamasına kaydettiğinde, yani herkes projeden ayrıldıktan birkaç dakika sonra gönderilir. Bunları daha erken göndermek için düzenleyicinin Dropbox iletişim kutusunda sync this project now seçeneğine tıklayın (dakikada bir kez).
- Dropbox’tan Overleaf’e: bir proje klasöründeki yeni ve değiştirilmiş dosyalar, yeni klasörler ve silmeler projeye uygulanır. Uygulama klasörünün en üst düzeyindeki yeni bir klasör yeni bir proje olur. Dropbox’ta bir proje klasörünü silmek, projeyi Overleaf’te silinmiş olarak işaretler.
- Çakışmalar: bir dosya aynı anda iki yerde değiştiğinde son değişiklik geçerli olur. Dropbox diğer sürümü bir conflicted copy olarak saklayabilir.
- Ortak çalışanlar: Dropbox’ını bağlayan ortak çalışanlar, kendileriyle paylaşılan projeleri alır. Salt okunur görüntüleyiciler ve inceleyiciler projeyi alır, ancak Dropbox’taki değişiklikleri Overleaf’e geri senkronize edilmez.
- Yok sayılan dosyalar: derleme çıktısı (
.aux,.log, …),.DS_Storeveya Python sanal ortamları gibi Overleaf’in senkronize etmediği dosyalar yalnızca Dropbox’ta kalır.
Q&A
Bir kullanıcı Dropbox hesabını neden bağlayamıyor?
Bir kullanıcı Dropbox hesabını neden bağlayamıyor?
- Overleaf’in henüz tanımadığı bir Dropbox klasörü bir projeyle adına göre eşleştirilir; bu nedenle projeleri aynı adı paylaşan bir kullanıcıdan önce bunları yeniden adlandırması istenir. Adlar büyük/küçük harf ayrımı yapılmadan karşılaştırılır ve arşivlenmiş ve çöp kutusuna taşınmış projeler de hesaba katılır.
- Bir Dropbox hesabı yalnızca bir Overleaf hesabına bağlanabilir.
Bir Dropbox hesabının bağlantısı neden kaldırıldı?
Bir Dropbox hesabının bağlantısı neden kaldırıldı?
Dropbox'ta bir proje klasörünü yeniden adlandırabilir miyim?
Dropbox'ta bir proje klasörünü yeniden adlandırabilir miyim?
Bazı proje klasörleri neden 'Thesis (1)' gibi numaralandırılmış?
Bazı proje klasörleri neden 'Thesis (1)' gibi numaralandırılmış?
Dropbox'ta bir proje klasörünü sildiğimde ne olur?
Dropbox'ta bir proje klasörünü sildiğimde ne olur?
- Başka hiçbir proje klasörün adını taşımıyorsa proje Overleaf’te silinmiş olarak işaretlenir. Dosyaları ve geçmişi korunur.
- Bu adı taşıyan birden fazla proje varsa Overleaf klasörün hangisine ait olduğunu anlayamaz. Dropbox hesabının bağlantısını kaldırır ve projeleri yeniden adlandırmayı isteyen bir bildirim gösterir. Klasörlerini Dropbox’ta silmeden önce projelere farklı adlar verin.
- “Thesis (1)” gibi numaralandırılmış bir klasör hiçbir proje adıyla eşleşmez; bu nedenle onu silmek Overleaf’teki projeyi değiştirmez. Projeyi Dropbox’a yeniden göndermek için düzenleyicinin Dropbox iletişim kutusunda sync this project now seçeneğine tıklayın.
Overleaf'te bir projeyi sildiğimde Dropbox'ta ne olur?
Overleaf'te bir projeyi sildiğimde Dropbox'ta ne olur?
Bir proje arşivlenmiş veya çöp kutusundayken Dropbox'taki değişikliklere ne olur?
Bir proje arşivlenmiş veya çöp kutusundayken Dropbox'taki değişikliklere ne olur?
Düzenleyicideki Dropbox bağlantısı neden Dropbox ana sayfasını açıyor?
Düzenleyicideki Dropbox bağlantısı neden Dropbox ana sayfasını açıyor?
Apps/<app folder>/<project> adresine gider. Dropbox Apps klasörünü çevrilmiş bir adla gösterdiğinde, örneğin Çincede 应用, bağlantı klasörü bulamaz ve Dropbox bunun yerine ana sayfasını açar. Proje klasörünü Dropbox’taki çevrilmiş Apps klasöründen açın.Bir projenin bazı dosyaları Dropbox'ta neden eksik?
Bir projenin bazı dosyaları Dropbox'ta neden eksik?

