我有一个git存储库.它有ABCDE ...提交.现在我想结帐D作为名为Dbranch的新分支.所以我执行:git checkout D -b Dbranch.现在我想删除这个分支.首先,我需要切换到master分支,然后使用git branch -d Dbranch它来删除它.但是当我执行时git checkout master,它会给我错误.
error: The following untracked working tree files would be overwritten by checkout:
source/a/foo.c
...... (too many lines)
Please move or remove them before you can switch branches.
Aborting
Run Code Online (Sandbox Code Playgroud)
如何删除Dbranch?
dek*_*dev 105
试试git checkout -f master.
-f 要么 --force
资料来源:https://www.kernel.org/pub/software/scm/git/docs/git-checkout.html
切换分支时,即使索引或工作树与HEAD不同,也要继续.这用于丢弃本地更改.
检查索引中的路径时,不要在未合并的条目上失败; 相反,未合并的条目将被忽略.
Von*_*onC 25
使用 Git 2.23(2019 年 8 月),即使用git switch -f:
git switch -f master
Run Code Online (Sandbox Code Playgroud)
这避免了与git checkout(处理文件或分支)的混淆。
即使索引或工作树与 HEAD 不同,这也会继续。
恢复索引和工作树以匹配切换目标。
如果--recurse-submodules指定,子模块内容也被恢复以匹配切换目标。
这用于丢弃本地更改。
Mal*_*ali -2
做一个:
git branch
Run Code Online (Sandbox Code Playgroud)
如果 git 向你显示类似的内容:
* (no branch)
master
Dbranch
Run Code Online (Sandbox Code Playgroud)
你有一个“独立的头脑”。如果您修改了该分支上的某些文件,请提交它们,然后返回到 master
git checkout master
Run Code Online (Sandbox Code Playgroud)
现在您应该能够删除 Dbranch。