用 github-cli 删除仓库
一句命令行删除 github 上的仓库
背景
组织的仓库太多了。但我不喜欢在我的账户里保留太多仓库。我一般随用随 fork, pull request 合并后就删仓库。
但在网页上删除仓库实在有点繁琐:
- 先要找到那个仓库
- 再点击设置
- 再点击删除
- 再点击删除对话框里的 “I want to delete the repository”
- 再点击删除对话框里的 “I have read and understand these effects”
- 最后还得输入或者复制仓库名进行确认。
要是再加上网络偶尔抽风,以上过程就更折磨了。
解决方法
github 有一款工具叫 github-cli,我之前一般用来克隆仓库和看 PR,突发奇想或许 github-cli 可以删除,查了一下 Manual 果然有。
gh repo delete
官方文档 gh repo delete
获取权限
要先获取 delete_repo
权限,按提示操作,获取一次即可。
1 | gh auth refresh -s delete_repo |
删除仓库
1 | gh repo delete [<repository>] [flags] |
命令也简单,只输入 gh repo delete
的话就是删除当前仓库。也可以指定仓库。
加上 --yes
无需确认,直接删除。不加的话会让你确认。
示例
1 | gh repo delete |
警告:注意谨慎操作,别删错了。
差点删库跑路
真是怕什么来什么,差点就把组织的代码库给删了。还好恰好我没有这个库的权限。
建议还是要显式指定要删除的用户名和仓库,或者不要加 --yes
。 不然删错了真出事。