Git Compare with base,比较大文件时,长时间等待,无法加载

  1. 问题

    当使用Git比较一个大文件(几十兆数量级)版本见差异时,会一直等待加载,且内存消耗很大,导致其他进程很难执行。任务管理器中,可以看到此时的TortoiseGitMerge吃掉3G左右的内存。

    ?

  2. 原因

    文件太大,加载很慢。

    ?

  3. 解决方法

    其实,我们在使用【Compare with base】这个功能时,想要比较版本间文件的不同之处,因此,无需加载整个文件内容,只显示出文件中的不同内容即可。设置如下:

    1. 先使用【Compare with base】比较一个小文件,否则,肯能要等很长时间去加载一个大文件;
    2. 在View属性页中点击Collapse,此后,再次使用TortoiseGitMerge比较文件时,即默认以Collapse的方式打开

时间: 2024-07-31 19:05:02

Git Compare with base,比较大文件时,长时间等待,无法加载的相关文章

php上传大文件时出现错误

在实现文件上传功能时,发现小文件可以上传(低于8M),但是上传大文件时,会出现以下错误: exception 'yii\web\BadRequestHttpException' with message 'Unable to verify your data submission.' in /var/www/html/labweb/vendor/yiisoft/yii2/web/Controller.php:110 Stack trace: #0 /var/www/html/labweb/ven

PHP加载大文件时require和file_get_contents的性能对比

在开发过程中发现,用require来加载一个很大(几百K,甚至几兆)的配置文件时,会造成响应超时.如果把这个配置文件的内容序列化后,用file_get_contents获取文件然后反序列化的方法来加载,就会快很多. 经过近两周的研究,大概知道了其中的原因. 首先,还从PHP的流程说起,PHP其实有两个流程,一个是启动的流程,一个是响应请求的流程.PHP作为Apache的一个模块,向Apache注册了两个函数,一个是Aapche启动的时候运行的函数:sapi_startup:一个是Apache接收

[WP8.1UI控件编程]Windows Phone大数据量网络图片列表的异步加载和内存优化

11.2.4 大数据量网络图片列表的异步加载和内存优化 虚拟化技术可以让Windows Phone上的大数据量列表不必担心会一次性加载所有的数据,保证了UI的流程性.对于虚拟化的技术,我们不仅仅只是依赖其来给列表加载数据,还可以利用虚拟化的特性去做更多的事情.虚拟化技术有一个很重要的特性就是,它可以准确地判断出哪些列表项处于手机屏幕中,可以动态地去更新这些数据.基于这样的特性,我们可以给列表的功能做更多的优化. 那么下面我们基于一个例子来讲解利用虚拟化技术去做列表的性能优化.有这么一个需求,需要

JavaWeb 服务启动时,在后台老板启动加载一个线程

avaWeb 服务启动时,在后台启动加载一个线程JavaWeb 服务启动时,在后台启动加载一个线程. 目前,我所掌握的一共有两种方法,第一种是监听(Listener),第二种是配置随项目启动而启动的Servlet. 下面对这两种方法做一简单的介绍,(Mark一下,防止以后急用又忘记了): 监听(Listener) 首先,我们创建一个监听的类,继承ServletContextListener,如下: 源码复制打印    package com.wxp.thread;    import javax

vs2012打开低版本项目时 出现vs2012警告未能加载包“visual c++ package 解决办法

vs2012 打开 vs2010 项目时 提示的 错误信息. 解决办法 是下载一个 vs2012的 一个补丁包 http://www.microsoft.com/en-us/download/details.aspx?id=36020 初次安装成功后,调试 无法启用,关闭,重新打开项目 即可解决! ======ok. [在此谢谢网上提供解决方案的朋友们,谢谢你们!] vs2012打开低版本项目时 出现vs2012警告未能加载包"visual c++ package 解决办法

git 管理和存储二进制大文件

git 管理二进制文件 本文档将逐步带你体验 git 的大文件管理方式. 环境: windows10 64位 cmd git版本: git version 2.18.0.windows.1 创建到推送 创建二进制文件,修改并推送到远程. : 初始化项目 git init : 创建 100k 大小文件模拟二进制文件 和普通文本 fsutil file createnew isbin.bin 102400 cd.>text.txt : 开启 lfs 功能及文件追踪 git lfs install g

读取大文件时的优化经验

最近在编写一个关于图形学的东西时,由于需要读取模型,写了一个obj文件和mtl文件解析器.实际调试时,由于该文件较长,比如obj文件达到了20万行的量级,在解析时凸显出了各种性能问题,解决这些性能问题的同时,也总结出了一些经验,记录如下: 1 必须使用缓冲区.虽然操作系统实现读取文件应该是有缓冲区概念的,但是结果显示如果不使用缓冲区,而用fgetc挨个字符进行读取,速度会比使用缓冲区慢上1个数量级.因此,引出第一条经验:一切大文件读取必须使用缓冲区,减少fread或fgetc的次数. 2 关于m

ElementTree 解析xml(minidom解析xml大文件时,MemoryError)

在使用minido解析xml文件时,因为文件过大,结果报错MemoryError.查询后得知是因为minidom在解析时是将所有文件放到内存里的,很占用内存,所以要考虑换一种方法来处理xml文件. ElementTree相比minidom消耗内存更小,下面是ElementTree的一些简单用法 XML源文件中的部分内容: #导入ElementTree from xml.etree import ElementTree #读入并解析XML文件,读入的是树形结构 doc = ET.parse(XML

优化 UltraEdit 打开大文件时的性能

UltraEdit 原本就是被设计成可以打开超大文件的工具,只不过在默认情况下需要进行以下优化设置: 禁止临时文件 禁止显示行号 禁止文件(回车 & 换行符)转换 禁止代码折叠 禁止显示函数列表 设置打开 XML 大文件阈值 禁止语法高亮 禁止列表变更指标(LCI) 1.禁止临时文件 打开 高级->配置->文件处理->临时文件.选择“不使用临时文件打开文件”.并设置阈值(当超过这个值时,不使用临时文件). 注意:这意味着如果你改动了文件的某些地方,这些改动将会立即生效. 2.禁止