实施 Dropbox .gitignore

Implement Dropbox .gitignore

我使用 Dropbox 来存储我所有的文档,包括我的编程项目。使用它的唯一缺点是它会同步所有无用的依赖项。不幸的是,没有 .dropboxignore 文件这样的东西。是否可以使用我已有的 .gitignore 文件自己实现此功能?我希望它是完全自动的。

谢谢

有一个 great article 的人写的,他和你一样在 dropbox 方面遇到过类似的挫折。

在文章中,Peter 描述了两种解决方案:

  • DropboxIgnore - 一个使用 Dropbox CLI 忽略文件的小型 bash 脚本,仅适用于 Linux.

  • .dbignore - 类似 .gitignore 的解决方案,仅适用于 mac OS

    • 注意:不再支持或维护此解决方案

请注意,我没有使用过这些产品,也与开发商没有任何关系。

这可能对 Windows 和安装了 git 命令行工具的 Powershell 的其他人有用。

脚本找到所有。git忽略当前文件夹和子文件夹中的文件,并将忽略的文件和文件夹设置为不上传到 Dropbox。

Get-ChildItem -Recurse | `
Where-Object { $_.Name -eq '.gitignore' } | `
ForEach-Object { `
    Write-Host $_.DirectoryName; `
    Push-Location $_.DirectoryName; `
    git status --ignored --short | `
        Where-Object { $_.StartsWith('!! ') } | `
        ForEach-Object { `
            $ignore = $_.Split(' ')[1].Trim('/'); `
            Write-Host $ignore; `
            Set-Content -Path $ignore -Stream com.dropbox.ignored -Value 1 `
        }; `
    Pop-Location }

您可以将其粘贴到 dropbox-sync-ignore.ps1 中并存储在您的 PATH 中,并且 运行 每当您在 git 中启动或更新项目时都可以将其存储。

Dropbox 允许您 ignore specific folders or files 而不排除它们,因此,您可以实现一个脚本,该脚本将根据您的 .gitignore 文件查找文件并忽略它们。

我最近实现了 dropboxignore,这是一个简单的 shell 脚本,它根据现有的 .gitignore 文件创建 .dropboxignore 文件,以便忽略 dropbox 中的匹配文件。

注意:dropboxignore 目前仅适用于 Linux 和 MacOS。