Git:为什么结帐会覆盖我的文件?

问题描述

我是git的新手。 git checkout后收到错误消息error: Your local changes to the following files would be overwritten by checkout:

我从Stack Overflow here中发现了一个很好的问题。

但是我还是很困惑。 为什么我的文件跟随我要签出的分支? 我希望这些文件保留在local分支中,而我可以简单地移至dev分支而不使用这些文件。


我的情况

local branch that I'm focusing(all files are committed)
- add => new_file.java
- delete => deleted_file.java
- modify => modified_file.java

git checkout dev
=> error: Your local changes to the following files would be overwritten by checkout:

编辑

我知道发生了什么事。抱歉,我上面的解释是错误的。

admin : is local branch that I'm focusing(all files are committed)
- add => new_file.java
- delete => deleted_file.java
- modify => modified_file.java

someone removed origin/admin branch,and created origin/admin/dev branch.
- my local
ㄴadmin

- origin
ㄴadmin (removed)
ㄴadmin/dev (created)

I tried checkout origin/admin/dev branch!
git checkout origin/admin/dev

- my local
ㄴadmin
ㄴadmin/dev (checkout failed)

它可能会失败。 因为我的本地分支的名称“ admin”和远程分支的名称“ admin / dev”已崩溃。 如果分支的名称崩溃,则签出失败,并且文件仍保留在我的工作空间中! Using the slash character in Git branch name

很抱歉提供了错误的解释。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)