选择性同步Google云端硬盘用于本地文件夹?

时间:2016-09-19 23:28:44

标签: google-drive-api

Google云端硬盘是否有办法为本地文件夹进行选择性同步,即将父文件夹同步到云,同时仅保留一些选定的子文件夹?

例如,在我的本地电脑中,project文件夹有3个子文件夹:datasourcebin。有没有办法使用Google云端硬盘备份project而忽略bin

3 个答案:

答案 0 :(得分:6)

我知道这是一个老问题而且#34; Google Drive"现在是"从Google"备份和同步,但它仍然适用。我花了一段时间才弄清楚这个解决方案,所以我可以同步我的项目而不包括依赖项或缓存。

据我了解,问题是您要同步文件夹,但是文件夹中有一些您不想同步的子文件夹或文件,但是想保留在本地计算机上(而不是Google云端硬盘) )。目前,Google云端硬盘只做相反的事情(它允许您在Google云端硬盘上保留副本,但不能在本地计算机上保留副本)。

解决此问题的一种方法是在要同步的文件夹中创建符号链接,Google云端硬盘将忽略它们(在Windows 10上使用mklink命令进行测试)。

例如,让我们说这是您的文件结构......

fred

现在,让我们说你想要本地机器上的MainFolder \ SubFolderB \和MainFolder \ FileB.ext,而不是Google Drive。制作一个" MainFolder"在Google云端硬盘文件夹之外的某个位置(例如:C:\ MainFolder \),然后将SubFolderB和FileB.ext移动到新创建的文件夹中。

您的文件结构现在应该像......

C:\
-- Google Drive\
---- MainFolder\
------ SubFolderA\
------ SubFolderB\
------ SubFolderC\
------ FileA.ext
------ FileB.ext
------ FileC.ext

接下来,我们要创建符号链接。对于此示例,您在管理员模式下运行命令提示符并运行以下命令:

C:\
-- Google Drive\
---- MainFolder\
------ SubFolderA\
------ SubFolderC\
------ FileA.ext
------ FileC.ext
-- MainFolder\
---- SubFolderB\
---- FileB.ext

现在您的文件结构将是:

mklink /D "C:\Google Drive\MainFolder\SubFolderB" "C:\MainFolder\SubFolderB"
mklink "C:\Google Drive\MainFolder\FileB.ext" "C:\MainFolder\FileB.ext"

那就是它!您符号链接的文件夹/文件仍将保留在本地计算机上,但不会存储/同步到您的远程Google云端硬盘。

修改

在此处发布实际答案,而不是将其链接。

答案 1 :(得分:1)

如果您要排除的文件夹位于 Google 云端硬盘中,那么您只需执行以下操作how to exclude folder from google drive backup and sync

步骤:

  • 转到首选项
  • 在左侧窗格中,点击“Google 云端硬盘”
  • 点击“仅同步这些文件夹”
  • 首先选择您可以看到的最高级别文件夹。选择后,将显示子文件夹,然后您可以进一步缩小选择范围。

答案 2 :(得分:-1)

这实际上可以通过choosing folders to sync使用Web界面以及桌面客户端来选择性地同步文件夹和子文件夹。

但是,如果您正在使用Google Drive API查找此功能,则Exclude certain filetypes from syncing to Google Drive上的论坛讨论清楚地表明此功能目前尚不存在。

此讨论 - Ability to sync only selected sub folders也可能对此功能有所帮助。