使用Github-Cli管理仓库
GitHub CLI 简介
GitHub CLI 是一个用于通过命令行与 GitHub 进行交互的强大工具。它允许开发者和用户管理存储库、拉取请求、问题和其他 GitHub 资源,而无需离开终端。
主要功能
- 仓库管理:创建、克隆、列出和删除仓库。
- 拉取请求:查看、创建、合并和关闭拉取请求。
- 问题跟踪:创建、列表、评论和关闭问题。
- 项目管理:管理和操作 GitHub Projects。
- 代码审查:检查更改、提交评论和批准或拒绝拉取请求。
- 扩展性:支持通过脚本和插件进行扩展。
安装 Github-Cli
| 1 | sudo pacman -S github-cli | 
基本使用
在 GitHub 上取得 Personal Access Token
1. 登录 GitHub 账户
- 打开 GitHub 并使用你的凭据登录。
2. 进入开发者设置
- 点击右上角的头像图标。
- 从下拉菜单中选择 Settings。
3. 导航到“Developer settings”
- 在左侧边栏中找到并点击 Developer settings。
4. 生成新的个人访问令牌
- 在 Developer settings中,点击Personal access tokens。
- 点击 Tokens (classic)或Fine-grained tokens,具体取决于你需要的权限范围。- 如果选择 Tokens (classic):- 点击 Generate new token。
- 填写令牌描述。
- 选择所需的权限范围(例如,repo表示对仓库的完全控制)。
- 点击 Generate token。
 
- 点击 
- 如果选择 Fine-grained tokens:- 点击 Generate new token。
- 填写令牌名称和描述。
- 配置资源访问权限(例如,特定组织或仓库)。
- 配置所需的作用域(例如,读取和写入仓库)。
- 点击 Generate token。
 
- 点击 
 
- 如果选择 
- 如果您需要取得对仓库的所有权限,则选择Tokens(classic), 如果仅需要有限的权限,则选择Fine-grained tokens。 一般只有自己使用系统时,使用所有权限更方便。
5. 保存令牌
- 生成后,你会看到新创建的令牌。非常重要的是,此时需要复制并安全地存储这个令牌,因为一旦离开页面,你就无法再次查看该令牌。
- 不要将令牌泄露给他人,并确保将其存储在一个安全的地方。
6. 使用令牌
- 你可以使用这个令牌来进行身份验证,例如,在命令行工具中使用 GitHub
CLI 登录: 1 gh auth login --with-token < your_token_here > 在本地配置 ssh 后, 可以在第6步中使用令牌登录,选择 ssh, 这种方法可以方便的创建、删除仓库等操作而不用登录网页。 
基本操作
- 登录和认证(按提示,一步一步认证即可) - 1 - gh auth login 
- 仓库管理 - 新建、列出、查看、删除仓库 - 1 
 2
 3
 4- gh repo create my-new-repo --public 
 gh repo list
 gh repo view owner/repo
 gh repo delete owner/repo
- 拉取请求 - 创建、列出、查看、合并、关闭请求 - 1 
 2
 3
 4
 5- gh pr create --title "Fix bug" --body "This PR fixes a critical bug." 
 gh pr list
 gh pr view 123
 gh pr merge 123
 gh pr close 123
- 问题跟踪 - 创建、列出、查看、关闭issue - 1 
 2
 3
 4- gh issue create --title "Bug report" --body "I found a bug..." 
 gh issue list
 gh issue view 456
 gh issue close 456
- 分支管理 - 列出、创建、删除分支 - 1 
 2
 3- gh branch list 
 gh branch create new-feature
 gh branch delete old-feature
- 发布管理 - 创建、列出、查看release - 1 
 2
 3- gh release create v1.0.0 
 gh release list
 gh release view v1.0.0
- 用户信息 - 查看当前用户、其他用户 - 1 
 2- gh api user 
 gh api users/username
- 组织管理 - 列出、查看组织 - 1 
 2- gh org list 
 gh org view organization-name