B S*_*ven 15 git version-control github
我有一个(现在)120 MB的大文本数据文件.
把它放在回购中是不是一种糟糕的做法?它会影响GitHub上的搜索功能吗?
这似乎是一个坏主意,因为整个源代码只有900行.
不打算更新文件.
可以将它放在Dropbox或Google Docs上,但它与repo分开.
如果不是GitHub,是否有更好的方法来管理/备份大数据文件?
在以下情况下将其放入 repo:
1- 您想跟踪更改
2- 它实际上是项目的一部分,并且您希望人们在克隆 repo 时收到它
在以下情况下不要将其放入 repo(使用 .gitignore 排除它):
1- 它经常更改但更改没有意义并且您不想保留历史记录
2- 它可以在线获得,或者您可以制作它可在线获取并在 repo 中放置链接或其他内容,以便人们知道在哪里可以找到它
如果您没有很多人下载 Dropbox,它会很好,Amazon S3 是您托管它的最佳选择。
有很好的方法来处理这种情况。例如,当我从事一个分析数据的项目时,尤其是在清洗和预处理步骤之后,它的la脚就是共享代码,而不共享数据集(当然是因为数据集的大小)。这是我发现的:
git lfs大型文件存储,它允许您跟踪和提交二进制文件,数据文件,图像等并将其推送到同一远程,并且如果您克隆存储库,则不必提取所有内容。
git-annex使用其自己的命令,因此您将分别提交仓库和附件文件。对于在任何远程设备(例如硬盘驱动器,s3,google驱动器等)上管理这些文件,它看起来很棒。
有人在这里对git-annex和git lfs进行了很好的比较,并且本文比较了几种简短形式的方法。
他们俩看起来都很棒,目前git附件更加成熟,但是git lfs是我使用的github开发的,这就是为什么我使用git lfs的原因。