存储使用--intent-to-add添加的文件

时间:2016-01-13 10:09:17

标签: git git-stash

我使用--intent-to-add选项与git add一起使用git commit -a轻松添加文件。但是,似乎这会让git stash感到困惑。例如:

git init
touch a
git add a
git commit -m 1
touch b
git add --intent-to-add b
git stash --include-untracked

提供git stash的输出:

error: Entry 'b' not uptodate. Cannot merge.
Cannot save the current worktree state

为什么会这样?可以修复吗?

1 个答案:

答案 0 :(得分:1)

给定git stash后跟git stash pop将会清除索引,我将从git reset --keep开始清除索引。 (对于--keep,这不会更改您的本地文件或提交,只会清除索引。)

git reset --keep
git stash --include-untracked

完成存储所需的内容后,您必须重做git add --intent-to-add b,因为您通过重置将其取消了:

git stash pop
git add --intent-to-add b

关于为什么首先发生这种情况,我不知道。对我来说似乎是个虫子。。。毕竟,您可以存放常规的git add