所以我在一个分支上,让我们称之为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
,这意味着我可能会把我最初的改变和其他似乎不知道从哪里冒出来的杂音混为一谈。
这些变化从何而来,它们是否安全?
发布于 2014-08-18 22:46:32
当您使用git checkout
时,git尝试删除目标分支中不存在的内容。如果你有一个病毒扫描仪运行,它会留下或提示你。如果您确信您已经存储或提交了所有内容,您可以使用git reset --hard
来处理这些废弃的文件。但是要小心,因为这里特别提到“恢复所有本地更改而不加警告”,所以确保这是您真正想要做的。
https://stackoverflow.com/questions/25367125
复制相似问题