【问题标题】:Cygwin: Git stash -> Cannot save the current index stateCygwin:Git stash -> 无法保存当前索引状态
【发布时间】:2017-08-17 22:38:37
【问题描述】:

我在 Windows 下使用 cygwin 来做一些命令行的事情。我有时使用的命令之一是 git stash。几个星期以来,我在使用它时总是收到此错误:无法保存当前索引状态

我也在其他项目中尝试过,所以不是项目相关的问题。历史没有被打破或类似的东西。我不经常使用它,所以我不知道问题是什么时候开始的。

错误在 git-stash 文件的第 110 行抛出。这就是我之前调试这两行的原因。

$(printf 'index on %s\n' "$msg" | 
git commit-tree $i_tree -p $b_commit)

当我回显第一个命令时,它会输出我的最后一次提交。这似乎没问题。当我通过管道输出两个命令时,它是空的,所以“git commit-tree $i_tree -p $b_commit”可能有问题。我google了很长时间,但无法找到解决此问题的方法。

Cygwin Git 版本:2.14.1

Cygwin x64 版本:2.8.2(0.313/5/3)

【问题讨论】:

    标签: windows git cygwin


    【解决方案1】:

    首先,检查 bash(与 Git 一起打包的 bash)问题是否仍然存在。确保设置您的 PATH 以便:

    • 不包括cygwin
    • 包括 git/bin、git/usr/bin、git/mingw64/bin:见this example
      使用简化的路径(用于测试目的)对于确保没有任何其他软件的副作用非常重要。

    其次,尝试在 git stash 关键行中添加 git status,以查看 Git repo 状态是否显示任何可疑内容。

    【讨论】:

    • 我删除了 cygwin git 包并在 windows 上安装了 git。比每次调试 cygwins git 错误要容易得多。不是第一个错误,之前有几个在几次更新后消失了。但我不想等到这个问题得到解决。
    • 抱歉,您的回答既不是解决方案也不是帮助。该cygwin git问题仍然没有修复。在 windows 上安装 git 本身只是一个快速修复,并不能解决根本问题。
    • @ChampS 你需要cygwin吗?或者 Win10 上的 WSL 可能是一个足够的环境? (msdn.microsoft.com/en-us/commandline/wsl/install_guide)
    • git status 完成了这项工作。我在控制台中得到了提示,接下来我应该做什么
    猜你喜欢
    • 2019-11-19
    • 2015-10-24
    • 2013-09-04
    • 2012-03-07
    • 2014-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多