Git在Windows10上的速度慢得无法用语言形容
我有一台Windows 10笔记本电脑,带有SSD、16GB内存和一个i7处理器 我读过这篇文章,但没有一个解决方案有用。 我尝试在以下场景中使用Git:Git在Windows10上的速度慢得无法用语言形容,windows,git,visual-studio-2015,atlassian-sourcetree,git-for-windows,Windows,Git,Visual Studio 2015,Atlassian Sourcetree,Git For Windows,我有一台Windows 10笔记本电脑,带有SSD、16GB内存和一个i7处理器 我读过这篇文章,但没有一个解决方案有用。 我尝试在以下场景中使用Git: 命令提示符 Git Bash Shell Visual Studio 2015 源树 所有这些都几乎无法使用。例如,在开始键入此问题之前,我在命令提示符下运行了以下命令: git流量功能启动“单独现金奖励” 它已经运行了10多分钟,尚未完成 当我查看我的任务管理器时,我的CPU是10%,内存是40%,磁盘是5% 目前有10个“Git for
编辑:大多数的慢度似乎发生在创建或合并分支时。只做一个简单的提交或推送是非常快的。您可以尝试在完全卸载后重新安装git,然后尝试在git bash中运行这些命令。仅用于测试,请尝试 尝试并:
- 解压(如果您有64位Windows操作系统)到您想要的任何位置。
例如:C:\git\2.12.2.2
- 打开常规CMD控制台并将路径设置为:
set PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\ set PATH=%PATH%;C:\git\2.12.2.2\bin;C:\git\2.12.2.2\cmd;C:\git\2.12.2.2\usr\bin;C:\git\2.12.2.2\mingw64\bin
bash-l-i
,看看Git是否仍然很慢
目标是确保您与路径中的其他软件没有任何冲突
此外,尝试和(测试)证明,你的反病毒,看看是否有任何副作用在这里
最后,确保您的代码库位于本地驱动器上(不通过网络或共享装载文件夹访问)
一个简单的异常规则(例如在git安装文件夹上)是否足以让git正常运行(即,如果AV设置为不检查其git安装文件夹),还有待测试
大多数的慢度似乎发生在创建或合并分支时
说到合并,Git2.28(2020年第3季度)将包含一些针对常见情况的代码优化
参见(2020年5月19日)作者。
(于2020年6月2日合并)
:针对单个策略跳过评估结果的优化
签署人:Andrew Ng
对于使用单个策略的合并,有效地不使用evaluate\u result()
的结果,因此不需要,因此完全避免
在Windows上,此优化可以将执行单个提交与LLVM repo的递归合并所需的时间减半
我试试看。卸载后,是否有任何缓存在任何位置的设置或文件需要在重新安装之前手动删除?是的,您也需要卸载HKEY和缓存数据。如果要节省手动卸载的时间,可以使用此软件lnik。如果仍然不起作用,请告诉我。什么软件链接?对不起。我忘了添加链接。这里是:你可以通过这个软件卸载git,它也会删除HKEY和缓存数据。我卸载了git,重新启动,重新安装了git,重新启动。我仍然存在性能问题。那么,如果手动合并分支,需要多少时间?您是否设置了任何合并工具?您的存储库很大吗?合并过程中是否存在许多冲突?合并时是否有其他流程?您提到的“创建分支”是否也意味着签出?创建分支本身不能慢,它基本上是noop。我使用git流进行分支合并。当我说创建一个分支时,我的意思是使用gitflow特性start,它创建一个具有特性名称的新分支。就生产应用程序而言,存储库非常小。它是一个具有单个项目文件的MVC web应用程序。合并时没有冲突。完成合并也需要10-20分钟。git bash中的echo$HOME
对您说了什么?它不是某个“M:\”吗?@max630它说/c/Users/jkruerI以管理员身份打开了命令提示符。我执行了您建议的步骤。当我运行bash-l-I时,我收到以下消息:mkdir:无法更改“/dev/shm”的权限:权限被拒绝。mkdir:无法更改“/dev/mqueue”的权限:权限被拒绝。然后它运行了几行,列出了文件夹名->'/etc/...@jkruer01无需管理员权限:以普通用户身份打开它,然后重试。此过程仍在运行。到目前为止,它已经运行了3分38秒。尚未完成。命令最终完成。这花了7分57秒,但我现在在一个bash提示符下。我将退出并作为普通用户运行,看看这是否会改变什么。谢谢作为一个普通用户运行,我能够在47秒内到达bash提示符。这是一个巨大的进步,但仍然慢得可笑。