Doz*_*Doz 18 git version-control github
突然之间我得到了这个git错误:""git status --porcelain failed""当我做一个git状态时......那是什么意思?
cak*_*yus 38
在我的情况下,我已将子模块移动到另一个目录,我收到了该错误消息.
.gitsubmodule以匹配子模块的当前路径.<currentPathOfSubmodule>/.git,gitdir必须匹配.git/modules/<pathOfSubmodule>.它有很多../../,你可以ls用来检查.得到那个错误:-)
致命:无法chdir ../<someWhere>:没有这样的文件或目录
致命:git status --porcelain子模块失败
编辑时.git/modules/<pathOfSubmodule>/config,worktree必须匹配子模块的当前路径.
完成.
sim*_*ont 13
在一些类似的StackOverflow问题中可以找到此错误消息:此处,此处.谷歌搜索带来此错误的邮件列表消息.没有人给出解释为什么会发生,所以我想我会添加我发现的东西.
一些术语概述,从man git页面:
GIT命令
我们将git分为高级("瓷器")命令和低级("管道")命令.
从上面的帖子中可以看出,在git status运行时,它会调用git status --porcelain.man git-status帮助告知我们--porcelain标志的用途:
- 瓷
以易于解析的格式为脚本提供输出.这与短输出类似,但在git版本中保持稳定,无论用户配置如何.请参阅下文了解详情.
所以你遇到的问题与git status调用有关,默认情况下尝试将其输出格式化为易于解析的内容.
从上面的帖子,特别是这里的答案和邮件列表的竞争,我建议,无论出于何种原因,你的git存储库已经损坏.如果您正在使用子模块,那么其中一个可能已损坏 - 这是相关的,因为
status在每个填充的子模块中运行"git status --porcelain"以查看它是否包含更改(链接)
除非明确告知不要这样做.
至于为什么你似乎有一个损坏的git存储库?我不知道.StackOverflow上的其他几个人已经提到覆盖,移动,替换或者通常.git在其存储库中摆弄目录.幸运的是,你有一个备份,对吧?;)
| 归档时间: |
|
| 查看次数: |
12041 次 |
| 最近记录: |