Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I have two laptops. I use them interchangeably and want a system where a \"share

ID: 659026 • Letter: I

Question

I have two laptops. I use them interchangeably and want a system where a "shared" library is synced between the two machines, such that if I create/change/delete a file on machine A, the same happens on machine B (after approval, so I can stop synching in case files were accidentally deleted on one of the machines). The data transfers should be properly encrypted, with no files ever stored with any third party. This way, my files would always be safe and backed up on machines under my control. It must be safe to use on public networks. What is/are my best option(s)?

I run Windows 8.1 on both machines.

Explanation / Answer

I would suggest using a distributed version control system such as mercurial, (possibly with TortoiseHg or possibly even git.

You will be able to wind back and forward the state of the controlled directories without a remote connection, be able to recover "deleted" files, be able to synchronise between machines via network, usb stick, VPN or even email (by sending patches in the last case).

If you are using mainly text files then only the differences are exchanged which makes it fast and efficient and even MS-Office .???x files and zip files can be handled the same way via the ZipDoc extension in mercurial.

Synchronising the folders when you are on the same network as each other can be as simple as running hg serve on one machine and hg pull on the other if you originally cloned from that one.

Additionally you will be able to track what changes were made to each file.

Mercurial is Free, (both Libre and FOSS), cross platform and a (I think) lot easier to use than many versioning systems.