1

我不知道为什么,但是在推动 Unison 的一些更改时,我不断收到此错误。

Synchronization complete at 11:49:01  (0 item transferred, 2 skipped, 0 failed)
  skipped: /timetool/ana_combined (contents changed on both sides)
  skipped: /timetool/plot_delays.py (contents changed on both sides)

我见过一些使用-prefer newer标签的解决方案,但我不确定这是否适用于我的情况。我正在使用的服务器在日本,而我在美国工作。因此,每个文件的时间戳都不同。

这是我正在使用的当前 Unison 命令(进行了一些小的更改以保持匿名):

unison -auto -ignore='Name {.idea,miniconda,reborn.egg-info,*.swp,*.log,*.so,build,*.pyc,*cache*,conda_env,anaconda3,results,home}' $1 \
       -servercmd /home/local/bin/unison /home/my/path/ohyeah \
       ssh://server//home/my/server/path/ohyeah

除了这个偶尔出现的错误外,一切正常。我没有在服务器端进行任何更改,但我似乎仍然收到此错误,并且我不确定如何强制进行我想要的更改。

4

1 回答 1

0

我会回答我自己的问题,我想我找到了解决方案。

我将-prefer root标志添加到我的同步脚本中以使其正常工作。顾名思义,它会比较版本并根据您的偏好传播更改。

即代码:

unison -auto -ignore='Name {.idea,miniconda,reborn.egg-info,*.swp,*.log,*.so,build,*.pyc,*cache*,conda_env,anaconda3,results,home}' $1 \
       -servercmd /home/local/bin/unison /home/my/path/ohyeah \
       ssh://server//home/my/server/path/ohyeah -prefer /home/my/path/ohyeah

将首选项设置为我的本地计算机。例如,如果有人编辑服务器目录中的代码,这可能会出现问题。当我同步文件时,它会覆盖这个人对我机器本地的任何东西所做的更改。

于 2020-07-20T20:47:38.940 回答