【发布时间】:2020-02-11 06:00:32
【问题描述】:
上下文:
我们有一个依赖于 nuget 包的 Visual Studio 项目(一个 Visual Studio 事物)。
每次我们发布该包的新版本时,我们都会使用该 nuget 包升级我们的项目。
项目存储在 git 中,我们克隆项目以获取本地副本,以便我们可以通过 nuget 更新从 Visual Studio 本身开始升级。
一位同事抱怨/注意到升级大约需要 30 分钟左右,然后开始询问为什么它这么慢。
经过一番催促,似乎当从根文件夹中删除 git 从而基本上取消跟踪所有文件时,升级速度快了 10 分钟。
然后我们都做了同样的事情,果然快了大约 10 分钟。
作为一种缓解措施,我们一直在将项目复制到另一个文件夹中,因此 git 不会在后台呼啸而过,一旦项目完成上传,我们将项目放回原始文件夹,然后 git 获取更改大获成功。
问题:
有没有办法在升级时暂时禁用 git 记录更改,然后在升级完成后启用它,以便它可以重新评估之后更改的文件?我对这种情况的理解是 git 可能正在编写在下载 nuget 并将新包安装到项目时发生的每一个小改动。
注意
我是从一个不确定的角度来写这篇文章的。好的,删除 git 使它更快,但当然,我不确定引擎盖下到底发生了什么......所以这个问题在 git 方面可能有点没有实际意义。但如果我们能搞清楚,整个公司都会节省很多时间!
【问题讨论】:
-
据我所知,git 不会连续监视文件。尽管某些环境(例如 windows)可能有一些东西。您使用哪种操作系统和 git 软件?
-
您能否提供有关您的流程/工作流程的更多信息?你是如何断定它与 Git 相关的?正如@max630 所说 - git 不会连续跟踪(例如 Dropbox 或 Google Drive)。一旦您决定暂存并提交更改,Git 就会添加更改。
-
谢谢大家,我已经更新了这个问题。我最初试图保持基本,但现在可以看到上下文可能是问题的一部分。
-
可能是视觉工作室轮询项目。有机会在更新期间关闭它吗?
-
@Jimmyt1988 我也会投票支持 Visual Studio 成为阻碍这一进程的人..
标签: git nuget-package nuget-update