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