我正在使用git和git-repo来管理我的项目。当我试图使用git命令删除我当前所在的本地分支时,出现了以下情况:
git branch -D branch_name
当我尝试删除当前分支时,出现了预期的错误提示。
但是,如果我使用repo命令
repo abandon branch_name
我可以删除当前分支。所以我的问题是,仓库内部使用什么命令来删除分支?
我正在使用git和git-repo来管理我的项目。当我试图使用git命令删除我当前所在的本地分支时,出现了以下情况:
git branch -D branch_name
当我尝试删除当前分支时,出现了预期的错误提示。
但是,如果我使用repo命令
repo abandon branch_name
我可以删除当前分支。所以我的问题是,仓库内部使用什么命令来删除分支?
abandon.py 子命令调用了 project.AbandonBranch,其中包含:
head = self.work_git.GetHead()
if head == rev:
# We can't destroy the branch while we are sitting
# on it. Switch to a detached HEAD.
#
head = all_refs[head]
revid = self.GetRevisionId(all_refs)
if head == revid:
_lwrite(os.path.join(self.worktree, '.git', HEAD),
'%s\n' % revid)
else:
self._Checkout(revid, quiet=True)
revid
')。