我的项目中有很多文件已更改。我想隐藏2个文件,但我有点害怕犯错误,因为我从未这样做过。
如果我现在要藏匿,它会只隐藏2个阶段的文件吗?
如果我没有标记“保持分阶段更改”,那么它会恢复到以前的状态吗? 这可能听起来很愚蠢,但最好保存然后抱歉。
答案 0 :(得分:44)
这一般适用于Git,而不仅仅适用于SourceTree。当您存储更改时,将要隐藏的项目是工作副本和暂存区域中对跟踪文件的更改。 这些更改将保存在隐藏中,并在工作副本和索引中还原。
当您选择在索引/暂存区域中保留更改时,这些更改仍将被隐藏,但Git也不会在暂存区域还原它们。如果,例如,您进行了几个不相关的更改,并且您希望仅运行测试中的一些更改,而不会使不相关的更改影响测试。
存储是安全的。如果你想恢复你的藏匿变化,你只需将它们从藏匿处弹出。
但是,未跟踪文件通常无法存储。如果你还要隐藏这些文件,你需要在命令行上向git stash
传递一个额外的选项(SourceTree for Windows目前没有这样的选项。我不知道是否对于Mac版本也是如此):
git stash save --include-untracked
# Or shorter
git stash save -u
答案 1 :(得分:9)
是的,但在这种情况下存在将意味着两种情况 -
检查保留暂存的更改:暂存的文件仍然在您的暂存区域中,但所有修改后的未保存文件都将被隐藏。
不检查暂存的更改:所有文件都将被隐藏。
答案 2 :(得分:0)
我也在寻找一种方法,可以将我的工作副本中的一些物品藏起来,而我偶然发现了这个问题。我找到了official Atlassian forums中提到的解决方法。我使用Windows的SourceTree版本3.3.8进行了尝试,它对我有用。
要隐藏选择的文件:
将要存放的文件分段
然后隐藏所有文件,但请确保已“保留分段更改” 已检查
现在您只有要存储在当前工作环境中的文件 复制
隐藏所有文件,且未选中“保留分段更改”
然后您可以重新应用第一个存储,并丢弃要存储的文件。