git: How to delete a local ref branch?

社会主义新天地 提交于 2019-11-30 12:30:35

问题


I have bit of a difficulty in deleting a local ref branch(refs/notes/origin/commits). I was able to delete the branch(refs/notes/origin/commits) in the remote repository using the command

git push origin :refs/notes/origin/commits

but when i try to delete the same branch on my local repository, i get the below error

[User@centos Clone]# git branch -rd refs/notes/origin/commits
error: remote branch 'refs/notes/origin/commits' not found.

Any suggestions?


回答1:


Just do

git branch -d commits

to delete the local branch.

Use the -D switch to delete it irrespective of its merged status.

Use

git update-ref -d refs/notes/origin/commits

to delete the ref.

You can also hard-delete it as mentioned in other answers with

rm -rf .git/refs/notes



回答2:


You have notes in your git repository, you can delete one note with

git notes remove <commit>

For deleting of all notes you have to remove the 'notes' directory

rm -rf .git/refs/notes

or you can use the git update-ref command.

git update-ref -d refs/notes/commits



回答3:


you can just delete the file out of the .git directory. From the repository root, a command like this will get it:

rm .git/refs/tags/refs/original/refs/heads/master

The path may be slightly different if the git-tag command failed, so you may want to cd .git/refs and find the offending head by trial-and-error. Deleting the file will remove the reference from your local repository.



来源:https://stackoverflow.com/questions/18506456/git-how-to-delete-a-local-ref-branch

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!