我在名为“sub-branch”的分支上创建。在使用命令test1.txt
切换到子brnach后,我在文件git checkout sub-branch
上创建。现在,当我使用命令git checkout master
切换到主分支而不提交子分支的更改时,文件test1.txt
也会显示在主分支中。
为什么文件test1.txt
显示在master分支中,因为我在子分支中创建了test1.txt
文件,因此它应该只在子分支中显示。为什么git显示{{1}当我做test1.txt
???。
由于
答案 0 :(得分:2)
只要你不在subbranch中提交它,它就是一个私有(未跟踪)文件,不附加到任何分支。
因此,当您切换回来时,该文件将被忽略并保持不变。
git checkout -f master
会删除本地更改(但不会删除未跟踪的文件)。
git clean
会,但是,这意味着你会丢失文件。从git clean -n
开始查看预览。
git stash
会保存您未跟踪的文件(直到您使用git stash pop
再次应用它)