当文件或文件夹位于已同步的目录中时,是否可以将其排除在同步之外?

当文件或文件夹位于已同步的目录中时,是否可以将其排除在同步之外?

我同步了一个名为“travel”的文件夹。我想排除此文件夹中的文件进行同步。这可以吗?其他大型同步器(如 dropbox 和 mozy)有此功能吗?

答案1

Ubuntu One 目前不支持此功能;一种解决方法是将文件夹从其当前所在的文件夹中移出(并在必要时从同步文件夹中指向它的符号链接),或将其重命名为一个独特的名称,并将该名称添加到“忽略”模式列表(第二种方法相当棘手;请阅读下面的说明)。

以下是执行第一项操作的方法:假设travel位于名为的目录中,并且您不想同步的misc子目录名为,打开终端(应用程序»附件»终端),然后输入:travelhuge

 cd misc
 mv travel/huge .travel_huge
 ln -s ../.travel_huge tavel/huge

请注意,这.travel_huge是一个隐藏目录,因此您通常不会在 nauitlus 和文件选择器中看到它。


拐弯处危险

以下是执行第二步的方法,假设您选择的唯一名称hugehuge-pics-of-acorn-trees-february-2011:首先,编辑 ~/.config/ubuntuone/syncdaemon.conf(您可以使用应用程序»附件»文本编辑器)并将以下内容添加到部分__main__(如果该文件不存在,请在以下内容前面添加一行[__main__]):

ignore = \A#.*\Z
         \A.*~\Z
         \A.*\.py[oc]\Z
         \A.*\.sw[nopx]\Z
         \A.*\.swpx\Z
         \A\..*\.tmp\Z
         \Ahuge-pics-of-acorn-trees-february-2011\Z

或者您可以简单地将文件夹重命名为当前ignore列表已经涵盖的内容,例如huge.tmphuge.pyc,但我怀疑您是否会喜欢这样。

但请注意,所描述的第二种方法相当脆弱:u1sdtool -q; u1sdtool -c在创建顶层目录之前,请确保您已更新配置文件并重新启动 syncdaemon(使用)。如果目录已经存在,请不要在 syncdaemon 运行时将其移动到忽略的名称;相反,停止 syncdaemon,重命名文件夹,编辑忽略列表,然后启动 syncdaemon。或者将文件夹移出同步层次结构,然后重命名,然后再将其移回。否则它可能无法按您预期的方式工作,甚至根本无法工作。


我知道 dropbox 有这个功能(我看过一个解释如何使用它的视频),但我还没有检查过,它可能只是处于测试阶段或类似的状态。

答案2

关于其他大型同步器的问题,我来回答一下:Dropbox 似乎没有办法选择性地忽略特定的文件/文件类型,但是这个帖子经过迪伦·R。提供一种有选择地忽略文件夹的方法。

简而言之,它是这样的:

  1. 请备份,以防万一:)
  2. 退出可能正在使用/写入文件夹的任何应用程序
  3. 将您不想同步的文件夹移出 Dropbox
  4. 让其同步
  5. 在完全相同的位置创建一个具有相同名称的文件夹
  6. 使用选择性同步停止同步该(空)文件夹。它将删除(现在为空的)文件夹。
  7. 将原始文件夹移回。

它会得到一个灰色的减号图标,并且不再同步。(空文件夹必须保留在 Dropbox 上,但它是空的,因此不占用空间)

相关内容