为什么git stash导致冲突后git stash pop?

时间:2013-12-19 12:09:45

标签: git git-stash

为什么在git stash pop之后git stash会导致冲突?

所以我做了:

$ git stash --keep-index
$ git stash pop

并且git要求我解决冲突。

我做错了吗?如何存储未分段的文件(测试程序)然后返回所有内容(所以我所有的分阶段文件都没有被触及,未分段的文件又回来了并且没有分页)?

1 个答案:

答案 0 :(得分:5)

问题来自--keep-index。您发现的更改与您已经上传的更改发生冲突。

以下是可用于重现的命令

echo bar > foo
git add foo
echo baz > foo
git stash --keep-index
git stash pop #CONFLICT

在那种情况下,git不知道bar或baz是否应该存在于foo ......

解决方案不是使用--keep-index参数或提交您先添加的更改(您可以随时修改提交)

您还可以使您的工作目录处于与使用git stash branch <branchname>之前相同的状态(然后您必须合并分支)