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

时间:2017-07-31 12:49:33

标签: git

我使用CREATE FUNCTION [dbo].[fnGetSomeData] ( @WorklistIds WorklistTable readonly ) RETURNS TABLE AS RETURN ( select WorklistId, wlu.UserId from @WorklistIds t join [dbo].[WorklistUser] wlu on wlu.WorklistId = t.worklistId -- the rest is omitted ); 创建了一个新分支。

我还没有运行git checkout -b new_branch_namegit add 我想完全摆脱这个分支,包括任何新文件,然后切换回master。我该怎么做?

2 个答案:

答案 0 :(得分:6)

使用以下内容切换回master:

git checkout master

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

git branch -D new_branch_name

答案 1 :(得分:1)

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

$ cat .git/refs/heads/master
6eef8fb523469b12abc530cd105c7b92a4a0a76a

因此,当您使用git branch -D branch_name删除分支时,它只删除branch_name中的文件.git/refs/heads,它不会触及工作树(即实际的c或java或python或你正在使用git跟踪的任何文件。)

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

git clean -df

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

如果在删除分支后有任何跟踪文件包含更改,您可以使用以下命令重置这些文件:

git reset --hard