如果自上次提交以来已将新文件添加到项目中,则Qt Creator中的Git存储将失败

sas*_*alm 8 git git-stash qt-creator

自从上次提交以来我刚刚对项目中的文件进行了更改时,git stash工作正常.

但是,如果我自上次提交以来还向项目添加了新文件,则会因此错误而失败:

C:\ Program Files\Git\cmd\git.exe stash save QtCreator 2013-01-08T12:06:51
无法隐藏在"C:\ MyProject"中:错误:条目'NewFile.cpp'不是uptodate.无法合并.
无法保存当前的worktree状态

为什么它会显示此错误,如果我已将新文件添加到项目中,是否有办法存储我的更改?

编辑

这是输出 git status

# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#   new file:   NewFile.cpp
#
# Changes not staged for commit:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#   modified:   MyFile.cpp
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   MyProject.pro.user
Run Code Online (Sandbox Code Playgroud)

uda*_*day 6

正如Scott Chacon所说,

Stashing采用工作目录的脏状态 - 即修改后的跟踪文件和分阶段更改 - 并将其保存在一堆未完成的更改中,您可以随时重新应用这些更改.

由于您添加了一个新文件,因此它不知道以前不存在,所以请尝试:

1) $ git add .
2) $ git stash
Run Code Online (Sandbox Code Playgroud)

看看你是否能够存储这些变化