无法切换回当前分支之前的分支
Posted
技术标签:
【中文标题】无法切换回当前分支之前的分支【英文标题】:Not able to switch back to branch which is ahead of current branch 【发布时间】:2018-12-19 02:32:32 【问题描述】:我在一个分支“测试”中工作并进行了拉取,现在我根据来源进行了更新。
git checkout develop
我结帐到位于 origin/develop 后面的分支“develop”,我复制了一些代码更改。现在我运行:
git status
当我在分支“test”中工作时,我得到了许多未跟踪的文件并且没有暂存文件。现在我只想签回测试分支并推送我的更改。 我的改动很小,所以我可以恢复并重做它们。 但是如何切换分支,因为我得到错误:
错误:以下未跟踪的工作树文件将被覆盖 通过结帐:
所有未标记和未跟踪的文件
请在切换分支之前移动或移除它们。
中止
需要帮助,以便我可以返回测试分支并重做更改。
【问题讨论】:
The following untracked working tree files would be overwritten by checkout的可能重复 【参考方案1】:在这种情况下,stash 是你最好的朋友 - https://git-scm.com/docs/git-stash
这是一个如何解决它的示例,我已经从您签出开发时的步骤开始
git checkout develop
git stash
git checkout test
git stash pop
git add .
git commit -m 'YOUR MESSAGE'
git checkout develop
应该为你做!
【讨论】:
非常感谢@josh 抽出时间来回答这个问题。我已经关注 ***.com/questions/1146973/… ***.com/questions/22620393/… 来找到我的问题的解决方案,类似于我使用 git checkout 的解决方案。和 git stash -u 和 git checkout test。以上是关于无法切换回当前分支之前的分支的主要内容,如果未能解决你的问题,请参考以下文章
在 Visual Studio 2015 git repo 中切换分支时发生错误,无法 rmdir 访问被拒绝