为什么显示“更新Git索引失败”

2024-01-18

我正在使用Windows。当暂存文件时,我收到此错误。

Updating the Git index failed. A rescan will be automatically started to resynchronize git-gui.

后跟已从 LF 转换为 CRLF 的文件列表

在大量阅读了 Git 使用跨平台的 CRLF / LF 问题后,我或多或少地了解了发生了什么,并且我试图确定哪种 autocrlf 设置最适合我,但我无法理解为什么 Git 这么说更新索引失败。我的理解是它已经转换了 EOF,那么这有什么问题以及为什么它告诉我更新索引失败。我是否需要修复某些问题(除了选择适当的 autocrlf 设置)或者我可以继续吗

然后我有两个选项“继续”和“解锁索引”,这是什么意思以及最好的行动方案是什么。


git config --global core.autocrlf false

一直是我的推荐(参见“Windows 上的 Git 1.6.4 beta (msysgit) - Unix 或 DOS 行终止 https://stackoverflow.com/questions/1249932/git-1-6-4-beta-on-windows-msysgit-unix-or-dos-line-termination/1250133#1250133").

但是,在您的情况下,您可以“继续”,但此警告指出某些文件的转换可能不可逆:

core.safecrlf

如果为 true,则让 git 检查当行尾转换处于活动状态时转换 CRLF 是否可逆。 Git 将验证命令是否直接或间接修改了工作树中的文件。例如,提交一个文件,然后签出同一文件应该会在工作树中生成原始文件。如果当前设置不是这种情况core.autocrlf,git 将拒绝该文件。
该变量可以设置为“warn”,在这种情况下,git 只会警告不可逆的转换,但会继续操作。

如果您不想看到此警告,如中所述这个线程 http://comments.gmane.org/gmane.comp.version-control.msysgit/7232,你可以设置core.safecrlf to false.

您还可以通过 git gui 的工具菜单隐藏文件,并向这些工具添加一些选项,例如,git配置文件 https://github.com/adamfranco/dotfiles/blob/master/.gitconfig.
有趣的是,对于每个工具,您可以添加:

guitool.<name>.norescan

该工具完成执行后,请勿重新扫描工作目录以查找更改。


您能详细说明一下解锁索引吗

你可以在index.tclgit-gui 脚本 https://github.com/git/git/blob/master/git-gui/lib/index.tcl#L4-L57:它会删除 git-gui 在操作索引时创建的 index.lock 文件。
您可以在以下位置查看更多内容“lockfile API”文档页面 https://github.com/git/git/blob/master/Documentation/technical/api-lockfile.txt:

相互排斥.
当我们写出一个新的索引文件时,首先我们创建一个新文件$GIT_DIR/index.lock,将新内容写入其中,并重命名为最终目的地$GIT_DIR/index.
我们尝试创造$GIT_DIR/index.lock文件与O_EXCL这样当其他人已经尝试更新索引文件时我们就可以注意到并失败。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么显示“更新Git索引失败” 的相关文章

  • 将 OpenBLAS 链接到 MinGW

    我正在尝试链接OpenBLAS https www openblas net 图书馆与明GW w64 https mingw w64 org Windows 上的编译器 这是我的代码 include
  • 在种子项目上构建时如何组织 git 存储库

    我正在基于从 github 克隆的种子项目 MEAN io 构建一个网站 如何将这些文件与我自己的文件分开 由于该种子提供了广泛的文件框架 因此我自己的文件分布在整个项目中 我希望能够从种子中提取更新 但不能将其与我添加的文件混合 我知道我
  • 为什么 Windows 命令 DIR 在搜索 *.tif 文件时也会输出 *.tiff 文件?

    我想使用 Windows 命令DIR为了找到唯一TIF文件 即具有扩展名的文件 tif 因此我使用以下小批处理文件 for f delims a IN dir b a d s C wolter testversion input tif d
  • Git 删除其他人从远程所做的最后提交

    所以 我的情况是 错误地 我已经授予某人对我的分支的承诺 现在 在我的本地 我已经进行了提交 当我尝试将其推送到远程时 它显示远程在前面 因为对方已经将他的代码推送到了这个分支并进行了多次提交 现在 我可以从远程删除这些提交而不将拉取到本地
  • git am 和 git apply 有什么区别?

    Both git am https git scm com docs git am and git apply https git scm com docs git apply可用于应用补丁 看起来git am自动提交 而git apply
  • 使用Windows 7计算器进行对数计算[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我想使用Windows计算器在科学模式中为了求解一个非常基本的对数方程 但不幸的是 我无法做到这一点 问题是这样的 log 5 125 非常感谢您的帮
  • 为什么同一个curl命令在windows和linux下输出不同的东西?

    为什么同样的curl o file https www link com 命令输出不同的东西 例如 如果我运行命令curl o source txt https www youtube com playlist list PLIx6Fwnp
  • 使用nodegit切换分支/标签

    我整个早上都在尝试打开现有的存储库并使用 nodegit 更改分支或标签 文档内容很丰富 但似乎已经过时了 关于我做错了什么有什么想法吗 var NodeGit require nodegit var open NodeGit Reposi
  • 是否可以使用“git gc”来打包引用日志对象?

    正如答案所暗示的https stackoverflow com a 32025729 https stackoverflow com a 32025729我已经配置了远程裸仓库 git config gc pruneExpire never
  • gerrit - git(pull、checkout、cherrypick)的用途是什么?

    在 Android 的 gerrit ex 中 link https android review googlesource com c 109934 要下载补丁 我看到4个选项 回购下载 checkout pull 择优挑选 它们之间有什
  • gitignore 匹配子目录中带有前缀和后缀的文件

    我喜欢只跟踪以 es 开头并以 h 或 m 结尾的文件 所以我尝试了这个 exlude all except es h es m and exlude all except es h es m 但对于子目录中的文件都不起作用 当你忽略一切
  • 用于绘制音符的库[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个可以以某种方式在屏幕上绘制音符的 Windows 库 我将使用它用 C 编写一个应用程序
  • 将 GIT 存储库中的文件标记为暂时忽略

    我们正在从 Perforce 迁移到 GIT 当然 我希望存储库中有一些文件 但个人开发人员不应该定期签入它们 诸如 eclipse 项目文件之类的东西 每个开发人员可能会获得初始的 project 文件 但随后会根据自己的环境稍微调整它
  • “git merge”和“git rebase”有什么区别?

    有什么区别git merge and git rebase 假设最初有 3 次提交 A B C 然后开发人员 Dan 创建了提交D 开发者 Ed 创建了提交E 显然 这一冲突应该以某种方式得到解决 为此 有两种方法 MERGE 两者都提交D
  • Github 操作错误:bash:第 3 行:npm:找不到命令

    我正在尝试通过 ssh 将 Nodejs 应用程序从 github 部署到远程 ubuntu 服务器 这是我的 main yml name Node Github CI on push branches master jobs deploy
  • 有没有办法强制 git merge 始终使用外部合并工具?

    有没有一种方法可以配置 git merge 使冲突解决始终通过外部合并工具进行 我正在编写语义合并的配置 并且存在这样的情况 git 错误地处理了这些情况 但可以通过语义合并正确解决 两个开发人员在同一文件的两个不同位置添加了相同的方法 问
  • 如何调试 git Remote set-url 不起作用

    我无法更改 git 远程 urlgit to https 如下图所示 git remote set url不工作 git remote v 来源 git github com userName repoName git 获取 原点 git
  • 读取存储在注册表中的 GUID 值

    我尝试读取存储为的 GUID 值binaryDelphi 注册表中的值 当我用BintoHex读取它时 但结果是相反的 看来我必须交换字节 但我认为 BinToHex 可以做到 我参考了这个线程 但找不到正确的解决方案 如何在 Delphi
  • git repo 的 tar/untar 后,gitk 显示“本地未提交的更改,未签入索引”

    我有一个包含小型 git 存储库的目录 git status 和 gitk all 显示没有未提交的更改 如果我使用以下命令 tar 压缩该目录 tar czf git repo tar gz git repo 然后将此 tar 文件传输到
  • 如何在解决冲突的过程中提交长 Git 合并

    我正在进行一次大型合并 其中包含 300 多个冲突文件 我想使用 mergetool 来解决这些问题 但我不可能一次性完成这一切 我如何提交合并 然后返回并继续相同的合并 通常 如果索引中存在冲突 git 似乎不允许您提交 我假设 不能一次

随机推荐

  • 使用 axios 从 React 前端启用 CORS?

    我在前端使用 React 并且从我不拥有的另一个域调用 API 我的 axios 请求 axios requestURL method GET headers Access Control Allow Origin Content Type
  • 我的工具栏在 API 级别 19 (Kitkat) 上不显示,而在 API 级别 21 上显示

    我的代码没有在 Kitkat 上显示工具栏 这是我针对两个 Android 版本的屏幕截图 奇巧版本 棒棒糖版本 这背后的原因可能是什么 清单文件
  • Java 7u51不接受带有自签名证书的JNLP?

    我在网上看到Java版本7u51 将于2014年1月发布 将不再接受我自签名的Java Webstart应用程序 真的吗 如果这是真的 我是否有机会为我的 JNLP 申请构建一个解决方法 以便我即使在 2014 年 1 月之后也能够启动该申
  • Ansible concat vars 到字符串

    我花了一天的大部分时间试图解决这个问题 但到目前为止都失败了 我正在构建一些剧本来自动化 Splunk 中的功能 并尝试将清单组中的主机列表转换为 E G search head 1 2 3 4 5 6 7 8 我从该剧的调试输出中获得的预
  • 是否可以在 setup.py 中表达特定于平台的依赖项,而无需构建特定于平台的 Egg 版本?

    我们有一个占位符 Egg 它不包含任何代码 其存在的目的只是为了从 PyPi 存储库中提取依赖包列表 大多数这些依赖包与平台无关 但有些仅在 Win32 平台上使用 是否有可能以某种方式使依赖项成为有条件的平台 以便我的给定依赖项insta
  • 幕后:ORM 如何“思考”?

    我对 Rails ActiveRecord PHP Doctrine 以及类似的 ORM 背后的一些设计感兴趣 ORM 如何设法实现链式访问器等功能以及它们通常期望工作的深度 ORM 如何在内部构造查询 ORM 如何管理查询 同时维持所有预
  • javascript 设置标头 Access-Control-Allow-Origin [重复]

    这个问题在这里已经有答案了 我正在用 POST 测试 JS 但我并没有取得成功 使用代码 div testing js div
  • GCC 内联汇编:约束

    我很难理解 GCC 内联汇编 x86 中的角色约束 我有阅读手册 http gcc gnu org onlinedocs gcc Constraints html Constraints 它准确地解释了每个约束的作用 问题是 尽管我了解每个
  • 如何使用 Firebase Cloud Functions Storage 创建文件夹

    我怎样才能制作文件夹 帖子 存储桶 gt gs app appspot com posts code exports generateThumbnail functions storage object onChange event gt
  • 如何在 iOS 应用程序中使用 Fabric 注销 Twitter

    共享实例注销不起作用 我知道这对开发人员来说是一个大问题 有没有人有办法解决吗 谢谢 大约三个月前我遇到了这个问题 现在刚刚找到了解决方案 显然 清除 cookie 实际上会删除 Twitter 为之前登录的用户存储的信息 下面的代码对我有
  • 当对象穿过路径时,对路径进行动画处理的最简单方法是什么?

    考虑一个穿过长线性路径的矩形 弄清楚形状在动画早期的位置会很有用 在形状移动之前显示整个路径不是我想要的 通过将路径添加到窗格中可以轻松完成此操作 我想要在形状后面有一条尾线 代表该形状迄今为止所经过的路径 有谁知道如何在 Javafx 中
  • JDK7 中菱形接口的意外行为

    我的 JSF 托管 bean 中有一个属性 private List
  • Android ImageView 设置 Bitmap FitXY 不起作用

    我已经尝试了很长时间来设置位图 使其适合ImageView界限 它只是不起作用scaleType fitXY 我的位图图像尺寸小于ImageView的 保存为 100X100 像素 我希望我的位图图像适合并拉伸到ImageView 这是一些
  • 如何设置 dll 的入口点

    首先 我认为 dll DLLMain 中的入口点 但是当我尝试在 C 中导入它时 我收到一个错误 找不到入口点这是我的代码 include
  • 不使用 Apache POI 解析 Excel 文件

    我知道我们可以使用 Apache POI 来解析 Excel 文件并获取数据 但我听说一个奇怪的事情 Excel 文件可以以与我们解析 CSV 类似的方式传递 就像从文件流中读取文件并用 逗号 分隔符分隔每个列值 当我们解析Excel时 我
  • 默认 Java 密钥库包含哪些密钥?

    我了解默认的 Java 信任库包含根证书和其他与信任相关的证书 但是 默认 Java 密钥库中存储了哪些密钥 据我所知 密钥库用于 在 SSL 握手期间应将哪些身份验证凭据发送到远程主机进行身份验证 如果您是 SSL 服务器 您将在密钥交换
  • Solr (JVM) 每小时峰值

    SOLVED 在我们的例子中 问题是 SuggestRequestHandler requestHandler name suggest 现在已经设置了facelimit 10 此外 应用程序提出的每个建议请求都有多个请求 为什么这会导致
  • 在 WPF MVVM 中动态添加控件

    我正在开发一个动态搜索视图 其中单击按钮应添加一个包含 3 个组合框和 2 个文本框的新行 我该怎么做呢 如果您真的想做 mvvm 请尝试忘记 如何添加控件 您不必这样做 只需考虑您的视图模型 WPF 会为您创建控件 在您的情况下 假设我们
  • 使用 Comparable 比较通用变量

    对于我班级中的一个作业 我们有一个名为 Pair 的类的集合 我们需要根据键的值按升序对其进行排序 如果键是字符串或整数 我可以应用此方法 但是如何编写代码来比较我的项目 当它们是通用的时 如下所示 我班上的教授解释了如何处理整数或字符串
  • 为什么显示“更新Git索引失败”

    我正在使用Windows 当暂存文件时 我收到此错误 Updating the Git index failed A rescan will be automatically started to resynchronize git gui