Menyimpan file .org saya di sinkronisasi di beberapa komputer

35

Bagaimana saya bisa memperbarui file .org di beberapa komputer, mungkin di beberapa platform (linux / windows)?

Saya dapat menyimpan semua file .org di git misalnya, tetapi itu mengharuskan saya untuk mengingat untuk menarik dan mendorong agar repo tetap diperbarui. Dapat bekerja dengan beberapa skrip untuk secara otomatis menangani file, karena saya tidak punya banyak.

Saya bisa mencoba menggunakan dropbox untuk ini juga. Saya berasumsi dropbox cukup sering menyinkronkan file-file tersebut agar tidak menimbulkan masalah.

Apakah mode-org menawarkan fungsionalitas untuk membantu menyinkronkan file di beberapa lokasi?

Zavior
sumber
1
Apakah ini membantu? Puting your org ...
Luke
Dropbox menyinkronkan file segera setelah ditulis. Secara internal, saya percaya Dropbox menggunakan skrip Python untuk memantau direktori.
Sean Allred
Jika keamanan / privasi adalah masalah, SpiderOak juga cukup bagus.
jon
orgmode.org/worg/org-contrib/gsoc2012/student-projects/… / orgmode.org/worg/org-contrib/gsoc2012/student-projects/… menyebutkan driver git-git file gabung org, tetapi saya tidak dapat menemukan setiap info tentang cara menggunakannya (jika sudah selesai)
unhammer
Berikut ini adalah contoh cara menyinkronkan folder pada mesin yang berbeda menggunakan rsyncmelalui Emacs: emacs.stackexchange.com/a/5844/2287
lawlist

Jawaban:

10

Saya menggunakan asisten git-lampiran untuk menyinkronkan file org saya di komputer saya dan bahkan telepon saya (jolla sehingga linux binary bekerja di luar kotak tetapi ada juga versi android).

Ini berfungsi seperti dropbox di mana setiap kali Anda menyimpan file itu akan mencoba untuk menyinkronkan tetapi itu terdesentralisasi dan gratis (seperti dalam kebebasan berbicara dan bir gratis).

Pengaturannya mudah jika Anda tahu git tetapi Anda perlu waktu untuk membiasakan diri dengan semua opsi.

Anda dapat menemukan lebih banyak di http://git-annex.branchable.com

razcampagne
sumber
Tolong koreksi saya jika saya salah, tetapi asisten git-annex adalah pilihan yang mengerikan. Itu tidak memeriksa perubahan dalam file teks. Ini juga mengatur file ke 'read-only' setiap kali mereka menyinkronkan.
JasoonS
7

File organ hanyalah file teks biasa, sehingga teknik apa pun yang dapat menyinkronkan file teks biasa akan berfungsi dengan baik dengan file org.

Alat sinkronisasi favorit saya adalah Serempak . Dengan file konfigurasi yang tepat, saya mengetik

unison org

dan Unison akan membandingkan file di ~/org/direktori saya di kedua mesin saya, biarkan saya meninjau tindakannya secara interaktif, lalu salin file yang perlu disalin dan gunakan alat gabungan eksternal untuk file yang perlu digabungkan.

jch
sumber
Konfigurasikan detail file? Upaya saya untuk menggabungkan emacs terus gagal
ijoseph
4

Mode org tidak menyediakan fungsionalitas sinkronisasi itu sendiri. Anda harus mengandalkan aplikasi terpisah seperti Dropbox untuk menyinkronkan file Anda. Dropbox tidak hanya disinkronkan sesering mungkin, tetapi segera ketika file berubah, jadi kecuali Anda mengubah file dan segera mematikan komputer Anda, Anda akan menjaga file Anda tetap sinkron.

Ryan
sumber
4

Saya pribadi memiliki masalah ini dan telah menggunakan salin alih-alih Dropbox untuk menyinkronkan file saya. (Saya tidak menggunakan Dropbox karena masalah privasi). Sama seperti Dropbox, Copy menawarkan klien untuk semua platform utama.

Kadang-kadang saya lupa untuk menyimpan buffer org saya, jadi saya telah meretas fungsi berikut untuk menyimpan semua file org setiap kali saya menyimpan beberapa file. Bukan solusi yang bagus, tetapi melayani tujuan saya.

(add-hook 'after-save-hook 'org-save-all-org-buffers)

Juga, jika Anda menyimpan data sensitif dalam file org Anda, saya sarankan Anda untuk melihat halaman ini . Saya menggunakan org-crypt yang luar biasa.

Renan Ranelli
sumber
2

Saya menggunakan Git untuk menyinkronkan file mode-org saya. Saya memiliki skrip Bash yang saya biarkan berjalan di latar belakang, yang secara otomatis melakukan file setiap menit (secara default), dan kemudian mendorong atau menarik yang diperlukan.

Versi pseudo-code:

  1. Mengkomit perubahan lokal dan memperbarui remote.
  2. Temukan komit lokal dengan git rev-parse @.
  3. Temukan komit jarak jauh dengan git rev-parse @{u}.
  4. Temukan basis dengan git merge-base @ @{u}
  5. Jika komit lokal sama dengan komit jarak jauh, maka kita selesai; semuanya mutakhir.
  6. Jika komit lokal sama dengan basis, maka komit jarak jauh memiliki komit tambahan, demikian juga git pull.
  7. Jika komit jarak jauh sama dengan basis, maka lokal memiliki komit ekstra, demikian juga git push.
  8. Kalau tidak, baik lokal maupun jauh memiliki komitmen ekstra. Skrip saya mencoba menyelesaikan ini secara otomatis (dengan git pull), tetapi jika tidak, akan mengirim bel dan keluar untuk diperbaiki pengguna secara manual.

8 langkah berjalan dalam satu lingkaran, tidak berhenti sampai saya keluar secara manual dengan C-c, atau ada kesalahan.

Saya menggunakan skrip ini di Windows menggunakan Cygwin .

Scott Weldon
sumber
2

Saya menggunakan Dropbox untuk menyinkronkan .orgfile utama saya rsync, gitatau sejenisnya karena menggunakan Dropbox Anda juga dapat menggunakan MobileOrg untuk melihat .orgfile Anda dari ponsel cerdas Anda.

Bagi saya ini sangat mudah dan melakukan pekerjaan yang luar biasa.

Rafa de Castro
sumber
2

Seperti yang orang lain katakan, mode Org tidak melakukan apa-apa tentang ini sendiri (atau seharusnya). Jadi pada dasarnya ini adalah masalah menemukan solusi sinkronisasi file pilihan Anda.

Saya menggunakan Dropbox. Berfungsi tanpa usaha di tiga platform saya (macOS, desktop Linux, Android). Juga, klien Org seluler yang saya gunakan, Orgzly , mendukungnya di luar kebiasaan .

Paul Bissex
sumber
1

Saat ini saya menggunakan btsync, tetapi ada beberapa alternatif terbuka (dan lebih rumit) di sekitar. Ini pada dasarnya mengawasi direktori dan menyinkronkannya ke semua perangkat lain yang berjalan segera setelah mereka online. Dropbox tanpa cloud jadi untuk berbicara. Karena menggunakan tabel hash terdistribusi dan firewall protokol torrent juga tidak menjadi masalah, dan ada klien seluler juga. Dan itu mentransfer semua yang dienkripsi.

Daniel Ziltener
sumber
0

Dropbox (atau penyimpanan cloud lainnya, saya kira) adalah caranya. Selain itu, ini sangat berguna untuk menyinkronkan pengaturan Emacs dalam ~/.emacs.d(digunakan mklinkpada Windows).

Alain
sumber