回答了一个相关问题How do you stash an untracked file?“跟踪文件”。但是,这不适用于我的特殊需求。
我试图用git stash save --keep-index
stash 索引中没有的所有内容,以便可以在预提交钩子(Hook)中验证索引。这个想法来自git-stash手册页的“测试部分提交”示例。我想确保我实际提交的内容通过测试,而不仅仅是工作目录中的内容。这是我到目前为止的内容:
echo "Running tests on the staging area."
git stash save --keep-index
# configure, build, run tests, clean
git stash pop; true
直到我在工作目录中取消跟踪未 stash 的文件之前,这似乎一直有效。一些搜索导致了两年前的功能请求:Option to save untracked and/or ignored files in stash,但仅此而已。
我应该完全使用 stash 吗?也许有更好的方法涉及临时分支或其他东西。
最佳答案
当我回答有关问题时,答案现在是:
从git 1.7.7开始,git stash
接受--include-untracked
选项,以将未跟踪的文件包括在您的存储中。
git stash --include-untracked
或者,您可以使用简短的
-u
选项。git stash -u
关于git:我可以 stash 未跟踪的文件而不将其添加到索引中吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3269086/