假设我有分支主人 在master中我创建了one.c,然后提交了更改
然后我创建了另一个名为new_branch的分支,并检入了它 然后添加了两个c,然后提交更改
当我再次结账时,工作目录中仍然存在two.c
我需要一种方法,通过这种方式,在结帐时,一个特定的分支,目录树变成了它的原因
在我的情况下,切换到master后,我不想在currect目录中看到two.c. 如果我签出new_branch,则再次出现two.c
如何做到这一点?
答案 0 :(得分:0)
git reset --hard
应删除未跟踪的文件(如two.c)
答案 1 :(得分:0)
您期望的是实际正常的Git行为。切换到分支时,不在前一个分支的分支中的文件被“隐藏”。但众所周知,有时情况并非如此。通常在文件(在您的情况下为two.c)正在使用时发生,例如在IDE中。
在这里查看:Git not removing files when switching branch和此处:git checkout remote branch shows extraneous files?
与上面提到的答案相似,请尝试git reset --hard
和git clean -fdx
答案 2 :(得分:0)
使用它 在分支A类型
git stash
然后切换分支
git checkout <branch name>
然后
git stash pop
看看它是否有效