Acho que seu problema básico aqui é que rsync não é uma boa ferramenta para sincronização bidirecional. Eu recomendaria alguma solução conceitualmente diferente, caso contrário você continuará a se debater.
- Você pode pesquisar usando
Unison. Ele funciona comorsync, mas é projetado para sincronização de dois dígitos. - Melhor ainda, procure usar um sistema de controle de origem como
git. Isso é particularmente útil para coisas como arquivos de configuração e seus scripts pessoais. Cada máquina em que você os utiliza terá um checkout separado, e o controle de versão cuida para garantir que você sempre tenha as alterações mais recentes por hora, incluindo a mesclagem de várias alterações diferentes, em vez de apenas ter os dados corrompidos de qualquer fonte.