遇到的一个git性能占用问题

在今天进行VScode的升级换代后,出现了性能问题。一旦我打开编译器,git for window便疯狂的占用我的内存,甚至在我这可怜的有限的8G运行内存空间中横冲直撞,一度飙到了2GB的内存占用量。苦恼思索,问度娘无果,最后便想到了git的执行机制,在VScode中,一定和我的项目源代码有关。

杀死git进程=>打开编辑器面板=>查看项目文件夹

果然,没有.gitignore文件

缺少这个文件,我的所有的六个项目的node_modules文件夹,都成了git创建仓库和加载依赖的工作队列。而所有的node-module的文件夹大小,有1~2个G,git为了快速加载模块,疯狂申请占用内存,一个git for window进程不够,又添加了好几个。所以电脑就爆炸了。听歌时网速为零、操作卡屏操作最为基本的表现。

解决办法:

  1. 方法一关闭不包含.gitignore文件夹或项目,将后台git进程及时kill掉(可以直接使用任务管理器)
  2. 在项目内添加上 .gitignore文件,并且将node_modules写进忽略名单

.gitignore写法

Git 忽略规则匹配语法

在 .gitignore 文件中,每一行的忽略规则的语法如下:

  • 空格不匹配任意文件,可作为分隔符,可用反斜杠转义
  • # 开头的文件标识注释,可以使用反斜杠进行转义
  • ! 开头的模式标识否定,该文件将会再次被包含,如果排除了该文件的父级目录,则使用 ! 也不会再次被包含。可以使用反斜杠进行转义
  • / 结束的模式只匹配文件夹以及在该文件夹路径下的内容,但是不匹配该文件
  • / 开始的模式匹配项目跟目录
  • 如果一个模式不包含斜杠,则它匹配相对于当前 .gitignore 文件路径的内容,如果该模式不在 .gitignore 文件中,则相对于项目根目录
  • ** 匹配多级目录,可在开始,中间,结束
  • ? 通用匹配单个字符
  • [] 通用匹配单个字符列表

常用匹配示例:

  • bin/: 忽略当前路径下的bin文件夹,该文件夹下的所有内容都会被忽略,不忽略 bin 文件
  • /bin: 忽略根目录下的bin文件
  • /*.c: 忽略 cat.c,不忽略 build/cat.c
  • debug/*.obj: 忽略 debug/io.obj,不忽略 debug/common/io.obj 和 tools/debug/io.obj
  • **/foo: 忽略/foo, a/foo, a/b/foo等
  • a/**/b: 忽略a/b, a/x/b, a/x/y/b等
  • !/bin/run.sh: 不忽略 bin 目录下的 run.sh 文件
  • *.log: 忽略所有 .log 文件
  • config.php: 忽略当前路径的 config.php 文件

遇到的一个git for windows 疯狂占用性能问题相关推荐

  1. 硬盘杀手!Windows版Redis疯狂占用C盘空间!

    关键词:Redis占用C盘,Windows Redis,64位Windows版Redis疯狂占用C盘空间,redis启动后创建RedisQFolk_****.dat文件,redis-server.ex ...

  2. Gogs搭建git私服-windows版

    Gogs搭建git私服-windows版 在代码的世界里,github应该是家喻户晓了,那么想不想在自己的电脑上搭建一套类似的服务供自己工作和学习使用呢.答案是肯定的. Gogs就是一款开源免费的产品 ...

  3. 搭建git for windows服务器(100%可以成功)【转】

    转自:http://blog.csdn.net/code_style/article/details/38764203 既然Git在linux下面非常好用,为什么还要搭建git windows的服务器 ...

  4. 另一个git进程似乎在这个存储库中运行

    我正在尝试学习如何使用Git,并创建了一个包含HTML,CSS和Javascript文件的小项目. 我从我的基本空项目中创建了一个分支,然后对我的代码进行了一些更改. 我尝试暂存更改,但我收到以下错误 ...

  5. 建立你的第一个 Git 仓库

    虽然 Git 确实是被许多重要软件选作版本控制工具,但是并不是仅能用于这些重要软件;它也能管理你购物清单(如果它们对你来说很重要的话,当然可以了!).你的配置文件.周报或日记.项目进展日志.甚至源代码 ...

  6. Git for Windows 2.13.1(2) 发布,分布式版本控制系统

    Git for Windows 2.13.1(2) 已发布,这是一个针对 2.13.1 的补充版本: git commit 和 git status 不再随机抛出分段错误. 详情和下载地址可查看发行主 ...

  7. webstorm git 怎么断开版本控制 webstorm git for windows 禁止 自动运行

    也是无语啊,今天装了下最新版本的webstorm ,  发现特别卡,老动不动就卡死, 看了下进程, 牛X 啊,  git for windows 一直蹭蹭蹭的疯狂增长,一开始的一点到后来的庞然大物. ...

  8. 如何使用git for windows上传文件到git仓库

    背景 自己搭了个基于 gitea 的 git 仓库,但是在上传项目时发现一次最多只能上传五个文件,且目录结构无法正确识别,如果想要修改或删除的话非常麻烦 需求 对 git 仓库中的项目方便的进行增.删 ...

  9. Git for Windows之推送本地版本库到远程仓库

    Git for Windows之基础环境搭建与基础操作中介绍了Git基本环境的构建与基本的操作.生成了一个本地git版本库,本文将介绍如何将这个版本库推送到远程仓库(码云,github也可以). 1. ...

最新文章

  1. 2021年大数据ZooKeeper(五):ZooKeeper Java API操作
  2. web developer tips (69):vs中在浏览器中查看的快捷键
  3. rest framework错误笔记——身份验证和权限
  4. 二进制的认识、进制之间的转换、计算机储存单位
  5. MXNet——symbol
  6. java编译sql存过_SQL SERVER 临时表导致存储过程重编译(recompile)的一些探讨
  7. Linux内核中的jiffies及其作用介绍及jiffies等相关函数详解
  8. HttpModule和HttpHandler的常见用法
  9. Jenkins详细教程
  10. Java Web 项目基于IDEA的增量补丁打包插件
  11. Perl教程-2.环境的安装
  12. 锐捷交换机堆叠配置举例
  13. 定时清理文件夹bat程序
  14. PHP自学笔记 ---李炎恢老师PHP第一季 TestGuest0.4
  15. 矩阵键盘基于51(UcosII)计算器小项目
  16. Python便捷写法:[[0] * n for _ in range(n)]
  17. J9数字论:如何去在Web2和Web3的融合中获得自己的优势呢?
  18. 高权重、PR域名哪里找?用什么工具查询域名权重?
  19. linux下kil命令l,linux/centos下使用kill命令的使用教程方法
  20. 互联网里的东邪、西毒、南帝、北丐

热门文章

  1. ssm+Vue计算机毕业设计校园食堂订餐系统(程序+LW文档)
  2. U9接口服务被调用报错怎么查看
  3. 【软件】Excel.exe应用程序报错,0xc0000022 cexel表格打不开,excel打开白屏
  4. vue引入外部js和css
  5. HTTP GET/POST 请求时,空格应该编码为 %20 还是 +?
  6. thinkphp6生成html,TinkPHP6-tp6实现全站静态化方法
  7. 简单讲解c语言中各个输入输出函数使用场景与不同,填补你的知识盲区
  8. Mac如何安装telnet命令
  9. 超神学院基因计算机,《超神学院》超级基因的起源
  10. 地图战“疫”背后,是BAT的“圈层生态”之争