所以我在一个分支上,让它调用它feature/PRO-10
,我想切换到另一个分支来快速检查一段代码的状态。我做git stash
来存储我的更改,然后git checkout bugfix/PRO-13
转到我要查看代码的分支。我完成了我想在这个分支上做的事情(没有做任何改动)并做了git checkout feature/PRO-10
回到我正在开发的分支。我即将做git stash pop
但等等!这是一个修改和未跟踪文件的庞然大物以及其他变化。
他们是怎么出现的?我从未做过任何合并。我可能已经git pull
与bugfix/PRO-13
进行了更新,但我不明白为什么这会让我跟随我的原始分支进行大量更改。
最糟糕的事情有时我会在做git stash pop
之前做git status
,这意味着我可能会将我原来的变化与看似来的所有其他gumph混合在一起无处不在。
这些变化来自哪里,是否可以安全摆脱?
答案 0 :(得分:0)
当你git checkout
时,git会尝试删除目标分支中不存在的内容。如果您运行的是病毒扫描程序,它会将其留在后面或提示您。如果您确信自己拥有被隐藏或已提交的所有内容,则可以git reset --hard
删除这些放弃的文件。但要小心,因为这具体说明"在没有警告的情况下还原所有本地更改"所以要确保你真的想做什么。