使用Github-Cli管理仓库

GitHub CLI 简介

GitHub CLI 是一个用于通过命令行与 GitHub 进行交互的强大工具。它允许开发者和用户管理存储库、拉取请求、问题和其他 GitHub 资源,而无需离开终端。

主要功能

  1. 仓库管理:创建、克隆、列出和删除仓库。
  2. 拉取请求:查看、创建、合并和关闭拉取请求。
  3. 问题跟踪:创建、列表、评论和关闭问题。
  4. 项目管理:管理和操作 GitHub Projects。
  5. 代码审查:检查更改、提交评论和批准或拒绝拉取请求。
  6. 扩展性:支持通过脚本和插件进行扩展。

安装 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

5. 保存令牌

  • 生成后,你会看到新创建的令牌。非常重要的是,此时需要复制并安全地存储这个令牌,因为一旦离开页面,你就无法再次查看该令牌。
  • 不要将令牌泄露给他人,并确保将其存储在一个安全的地方。

6. 使用令牌

  • 你可以使用这个令牌来进行身份验证,例如,在命令行工具中使用 GitHub CLI 登录:
    1
    gh auth login --with-token < your_token_here >

    在本地配置 ssh 后, 可以在第6步中使用令牌登录,选择 ssh, 这种方法可以方便的创建、删除仓库等操作而不用登录网页。

基本操作

  1. 登录和认证(按提示,一步一步认证即可)

    1
    gh auth login

  2. 仓库管理

    新建、列出、查看、删除仓库
    1
    2
    3
    4
    gh repo create my-new-repo --public
    gh repo list
    gh repo view owner/repo
    gh repo delete owner/repo

  3. 拉取请求

    创建、列出、查看、合并、关闭请求
    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

  4. 问题跟踪

    创建、列出、查看、关闭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

  5. 分支管理

    列出、创建、删除分支
    1
    2
    3
    gh branch list
    gh branch create new-feature
    gh branch delete old-feature

  6. 发布管理

    创建、列出、查看release
    1
    2
    3
    gh release create v1.0.0
    gh release list
    gh release view v1.0.0

  7. 用户信息

    查看当前用户、其他用户
    1
    2
    gh api user
    gh api users/username

  8. 组织管理

    列出、查看组织
    1
    2
    gh org list
    gh org view organization-name