[Отвечая на мой собственный вопрос, когда я нашел хороший способ сделать это]
Используйте unison
инструмент, разработанный Бенджамином Пирсом в U Penn.
Допустим, у вас есть два каталога,
/home/user/Documents/dirA/
и /home/user/Documents/dirB/
Для синхронизации этих двух вы можете использовать:
~ $unison -ui text /home/user/Documents/dirA/ /home/user/Documents/dirB/
В выходных данных unison
будет отображаться каждый каталог и файл, которые отличаются в двух каталогах, которые вы просили синхронизировать. Она будет рекомендовать аддитивно синхронизировать (повторность отсутствует файл в обоих местах) на начальный период, а затем создать и поддерживать дерево синхронизации на вашем компьютере, так и на последующих запусках он будет осуществлять истинную синхронизации (то есть, если вы удалите файл .../dirA
, его также будут удалены из .../dirB
. Вы также можете сравнить каждое изменение и, при желании, выбрать прямую или обратную синхронизацию между двумя каталогами.
При желании, чтобы запустить графический интерфейс, просто удалите -ui text
опцию из вашей команды, хотя я считаю, что cli
проще и быстрее в использовании.
Подробнее об этом: учебник по Unison в пользовательской документации Unison .