一个相关的问题How do you stash an untracked file?的回答是“跟踪文件”。然而,这并不能满足我的特殊需求。
我试图用git stash save --keep-index隐藏索引中没有的所有内容,这样我就可以在预提交钩子中验证索引了。这个想法来自git-stash手册页的“测试部分提交”示例。我希望确保我实际提交的内容能够通过测试,而不仅仅是工作目录中的内容。这是我到目前为止所知道的:
echo "Running tests on the staging area."
git stash save --keep-index
# configure, build, run tests, clean
git stash pop; true这似乎是有效的,直到我在我的工作目录中有未跟踪的文件,这些文件不会被隐藏。一些搜索导致了两年前的功能请求:Option to save untracked and/or ignored files in stash,但没有其他。
我应该使用stash吗?也许有一种更好的方法涉及到临时分支之类的东西。
发布于 2011-10-02 22:30:42
正如我对相关问题的回答,答案现在是肯定的:
从git 1.7.7开始,git stash接受--include-untracked选项以将未跟踪的文件包含在您的存储中。
git stash --include-untracked或者,您可以使用short -u选项。
git stash -u发布于 2010-07-17 05:49:24
不,git stash只会“记录工作目录和索引的当前状态”。所以隐藏不会提取你未被跟踪的文件。
按照您的建议,切换到临时分支并跟踪那里未跟踪的文件似乎是一种合理的方法。
https://stackoverflow.com/questions/3269086
复制相似问题