Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 如何删除本地分支并返回到主分支?_Git - Fatal编程技术网

Git 如何删除本地分支并返回到主分支?

Git 如何删除本地分支并返回到主分支?,git,Git,我使用git checkout-b new\u branch\u name创建了一个新分支 我还没有运行git add或git commit。 我想完全摆脱这个分支,包括任何新文件,并切换回主。如何执行此操作?使用以下命令切换回主控: git checkout master 使用以下命令删除您创建的分支: git branch -D new_branch_name 分支只是指向提交的指针: $ cat .git/refs/heads/master 6eef8fb523469b12abc530

我使用
git checkout-b new\u branch\u name
创建了一个新分支

我还没有运行
git add
git commit


我想完全摆脱这个分支,包括任何新文件,并切换回主。如何执行此操作?

使用以下命令切换回主控:

git checkout master
使用以下命令删除您创建的分支:

git branch -D new_branch_name

分支只是指向提交的指针:

$ cat .git/refs/heads/master
6eef8fb523469b12abc530cd105c7b92a4a0a76a
因此,当您使用
git branch-D branch\u name
删除一个分支时,它只删除
.git/refs/heads
中的文件
branch\u name
,而不触及工作树(即实际的c或java或python或使用git跟踪的任何文件)

要在删除分支后清理任何未跟踪的文件,只需使用:

git clean -df
-d
标志还将删除未跟踪的目录。如果配置选项
clean.requireForce
设置为true,则
-f
标志强制执行清除。如果要以交互方式查看作品,可以添加
-i
标志

如果在删除分支后有任何更改的跟踪文件,可以使用以下方法重置这些文件:

git reset --hard

可能的重复删除了分支,但没有删除我机器上的文件。我甚至回到了master branch,从github撤出,但这并不奏效。我不得不手动删除我制作的文件。@josh这并没有什么意外。由于您没有提交,Git对这些文件一无所知。当您签出另一个分支时,期望它们被删除是错误的;'比如大师。