我需要删除一个主分支,但事实证明它很难。我只是想清理那个分支并开始新的。我从开发分支删除。我希望GitHub上的主人干净。
# git push origin --delete master
> To https://github.com/mymasterb.git ! [remote rejected] master
> (deletion of the current branch prohibited) error: failed to push some
> refs to 'https://github.com/mymaster.git'
我如何简单地用新鲜的石板开始我的主人?
答案 0 :(得分:102)
如Matthew Brett在“Deleting your master branch”中所述,您需要更改GitHub repo默认分支。
您需要转到分叉存储库的GitHub页面,然后单击“设置”按钮。
单击左侧的“分支”选项卡。屏幕顶部附近有一个“默认分支”下拉列表。
从那里,选择占位符(其中占位符是新默认分支的虚拟名称)。
确认您要更改默认分支。
现在你可以(从命令行):
git push origin :master
或者,自2012年起,您可以delete that same branch directly on GitHub:
那是announced in Sept. 2013,也就是我最初写这个答案一年后。
对于文档修正,拼写错误等小的更改,或者如果您只是一个步行软件编译器,您可以在浏览器中完成大量工作,而无需将整个存储库克隆到您的计算机。
注意:对于BitBucket,Tum报告in the comments:
Bitbucket的内容大致相同
Repo -> Settings -> Repository details -> Main branch
答案 1 :(得分:8)
要从字面上回答问题(因为GitHub不在问题标题中),还请注意超级用户上的this post。 编辑:答案复制到相关部分的此处,并稍作修改,以使方括号清晰可见:
被拒绝是因为您正试图删除您的来源当前已“签出”的分支。
如果您可以直接访问该存储库,则只需在[裸存储库]目录中打开一个shell,然后使用旧的
git branch
来查看当前分支源。要将其更改为另一个分支,必须使用git symbolic-ref HEAD refs/heads/another-branch
。
答案 2 :(得分:3)
最快的方法是将默认分支从master切换到另一个 ,您可以从网络界面中删除master分支。
答案 3 :(得分:-1)
在 git bash 上输入这个命令行,一切都会被修复,它对我有用
rm -rf .git