GIT> 2万个新文件阻塞了VSCode UI,“活动更改太多”

时间:2019-05-22 13:18:56

标签: git visual-studio-code

我正在尝试添加一个必须跟踪的文件夹,但是它是> 1GB /> 20k文件。

一旦我添加了它,我将收到有关太多有效更改的警告,而Git只会拒绝正常工作(在VS Code上,警告我无法提交任何内容,因为它表示没有更改(警告左边没有显示)有变化))。

试图使用命令行,但根本不推送新文件夹:/

任何建议如何处理大量新文件?我将在每个文件夹中从1GB-5GB到20k-200k filer拥有大约5-6x个文件夹。

2 个答案:

答案 0 :(得分:1)

我在VS Code中遇到了类似的问题。如果您当前停留在VS Code git扩展名不断重复此消息的位置,请将有问题的文件夹放在.gitignore中,然后为其删除git对象缓存。

Type mismatch: inferred type is () -> ??? but Int was expected. Unresolved reference. None of the following candidates is applicable because of receiver type mismatch: 
public operator fun MatchGroupCollection.get(name: String): MatchGroup? defined in kotlin.text. 

在VS Code中处理大量文件的一个好策略是按照Lasse的说明分隔每个文件夹并分别提交。

.gitignore结构中的拆分文件夹之类的东西

git rm -r --cached path/to/folder

一次删除一个并提交,并根据需要进行细化。冲洗并重复。如果您有phpstorm,请改用这些文件进行大型提交。

答案 1 :(得分:0)

您真的应该将这么多文件推送到git repo吗?将多个GB的文件添加到git repo被认为是一种不好的做法。

例如Github.com要求git repos为less than 1GB

请考虑以下方法

Git LFS

https://git-lfs.github.com/
Git LFS是一个旨在存储二进制文件的插件。它们由git管理,但存储在外部。当您必须在git repo中包含大文件时,这被认为是最好的方法。

依赖性解析器

如果要添加到git repo的文件是外部依赖项,请考虑查看依赖项解析器以按需获取依赖项。

Javascript / Node-npm
Ruby-bundler