从一个远程但不是另一个远程排除文件

时间:2018-02-07 16:30:56

标签: git github rsync git-subtree git-lfs

我想要一个git存储库的三个副本:

  1. 我自己笔记本电脑上的副本
  2. 外部服务器上的副本
  3. GitHub上的副本
  4. 除了代码和文档之外,存储库还将包含几GB的二进制文件。我想将所有内容保存在我的笔记本电脑和外部服务器上,但我想从GitHub中排除二进制文件,因为它们既机密又大。我怎么能这样做?

    如果重要,二进制文件内容不会改变,但将来会添加更多二进制文件,并且可能会删除一些二进制文件。我需要二进制文件在我的笔记本电脑和服务器之间保持同步,我想保留备份以防万一意外删除。到目前为止,我最好的解决方案是将二进制文件添加到.gitignore,使用第二个程序仅在我的笔记本电脑和服务器之间同步这些文件,并使用第三个程序在服务器上仅对这些文件进行版本化备份。

1 个答案:

答案 0 :(得分:2)

  

如果重要,二进制文件内容不会改变,但将来会添加更多二进制文件,并且可能会删除一些二进制文件。我需要二进制文件在我的笔记本电脑和服务器之间保持同步,我想保留备份以防万一意外删除。

然后这不是(还)Git仓库的工作:将这些二进制文件保存在单独的参考中,自动同步/保存(dropbox,google驱动器,OnePlus驱动器,Amazon S3,...)

然后,您可以只将源保存在Git仓库中,如果需要,可以将二进制文件从备份文件夹复制/ rsync到本地仓库,以便拥有一个包含所有内容的树结构。 /> 同一个复制/ rsync进程可以帮助检测本地存储库中二进制文件的任何添加,修改和抑制,镜像备份(dropbox,...)二进制文件夹中的二进制文件,并保持这些二进制文件同步(并保存,但在外部GIT)。