使用git项目存储大型csv文件的最佳方法

时间:2017-08-15 13:17:48

标签: git git-lfs

嘿,我还有另外一个问题:Why not to use git for large files?。 评论部分中的一个用户提到git LFS实际上并不用于存储大型csv文件。所以现在我的问题是,更好的方法是什么?我可能只是使用git?但那么历史上大文件的问题呢?

1 个答案:

答案 0 :(得分:0)

对于大型CVS文件,您可以复制Git LFS的功能,并添加您自己的smudge/clean content filter driver

结帐时,func AnythingToSlice(a interface{}) []interface{} { v := reflect.ValueOf(a) switch v.Kind() { case reflect.Slice, reflect.Array: result := make([]interface{}, v.Len()) for i := 0; i < v.Len(); i++ { result[i] = v.Index(i).Interface() } return result default: panic("not supported") } } 脚本会从外部存储器中获取您的CVS文件(例如S3,如评论中所述)。

smudge脚本在提交时会检查文件是否已更改,然后将其上传回来,这根本不应该根据您的情况发生。

这样,您就可以避免在Git仓库中保留一个大文本文件。