我对一个文件进行了更改,再加上一个新文件,我想在切换到另一个任务时使用git stash将它们保存起来。但是git stash本身只存储对现有文件的更改;新文件仍保留在我的工作树中,打乱了我未来的工作。我如何保存这个未跟踪的文件?


当前回答

在git版本2.8.1上:以下对我有用。

将已修改和未跟踪的文件保存在不带名称的存储中

git stash save -u

使用名称将已修改和未跟踪的文件保存在存储库中

git stash save -u <name_of_stash>

您可以稍后使用pop或apply,如下所示。

git stash pop

git stash apply stash@{0}

其他回答

我可以通过以下方式来隐藏未跟踪的文件:

git stash save "tracked files I'm working on"
git stash save -u "untracked files I'm trying to stash"
git stash pop stash@{1}

最后一个弹出隐藏的跟踪文件,从而只留下未跟踪的文件。

在git版本2.8.1上:以下对我有用。

将已修改和未跟踪的文件保存在不带名称的存储中

git stash save -u

使用名称将已修改和未跟踪的文件保存在存储库中

git stash save -u <name_of_stash>

您可以稍后使用pop或apply,如下所示。

git stash pop

git stash apply stash@{0}

你如何隐藏未追踪的文件?

git stash --include-untracked

2.35版中的新增功能

git stash的新的暂存模式使您可以轻松地将暂存区中已有的东西存放起来,而无需其他任何东西。你可以把它想象成gitcommit(它只写阶段性的更改),但它不是创建一个新的commit,而是将一个新条目写到存储中。然后,当你准备好了,你可以恢复你的更改(使用git stash pop)并继续工作。

git add -A
git stash --staged

在VS 2019和更高版本中提供Stashing。

转到Git更改窗口Ctrl+Alt+F7现在按下“全部提交”或“提交阶段”按钮附近的下拉键,查看隐藏选项

如果您想隐藏未跟踪的文件,如Git忽略的文件或未包含在项目中的文件,请选择此选项

阅读以下答案,了解Visual studio中Git存储的完整用法:https://stackoverflow.com/a/69905607/4391394