GitHub¶
常见缩写¶
PR:Pull Request,提交PR
WIP:Work In Progress,如果你要做一个很大的改动,可以在完成部分的情况下先提交,但说明WIP,方便项目维护人员知道你还在 Work,同时他们可以先审核已经完成的。
PTAL:Please Take A Look,请求项目维护人员进行 Code Review。
TBR:To Be Reviewed,提示这些代码要进行审核。
TL;DR:Too Long; Didn't Read,太长了,懒得看。
LGTM:Looks Good To Me,通常是 Code Review 的时候回复的,即审核通过的意思。
SGTM:Sounds Good To Me,跟 LGTM 同义。
AFAIK:As Far As I Know,据我所知。
CC:Carbon Copy,抄送。
GitHub Packages¶
是一个用于托管和管理包(包括容器和其他依赖项)的平台
为常用的包管理器提供不同的包注册表,例如 npm、RubyGems、Apache Maven、Gradle、Docker 和 NuGet
可以将 GitHub Packages 与 GitHub API、GitHub Actions 和 webhook 集成
GitHub Actions¶
Docs: https://docs.github.com/zh/actions/using-workflows/about-workflows
配置文件¶
路径固定,文件名称可自定义:.github/workflows/xxx.yml
name: xxx # workflow的名称,省略则默认为文件名
on: # 触发条件
push
branches: # 可限定触发分支
- main
- master
jobs:
job1: # id
container: python # 指定docker镜像
runs-on: ubuntu-18.04 # 运行环境,类似GitLab的tags
steps:
- uses: actions/setup-python@v4 # 引用
with:
python-version: 3.x # 会被设置为环境变量:INPUT_PYTHON-VERSION
- name: desc # 说明
run: action # 命令
job2:
needs: job1 # 依赖
steps:
- name:
env: # 环境变量
key: value
run: action
python:
runs-on: ubuntu-latest
steps:
# 检出当前代码库,克隆到 GitHub 提供的虚拟环境中
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Python runtime
uses: actions/setup-python@v5
with:
python-version: ${{ env.PYTHON_VERSION }}
cache: pip # 缓存 pip 安装的依赖包
cache-dependency-path: | # 监控依赖变化的文件列表
requirements.txt
uses¶
- 引用 GitHub Marketplace
- 引用当前或其它仓库:
uses: actions/setup-python@v4
- 引用 DockerHub 中的 actions:
uses: docker://alpine:3.8
GitHub Pages¶
每个用户或组织只能有一个主页面:https://<user>.github.io
或 <organization>.github.io
用户或组织下的每个项目可以作为子页面:https://<user>.github.io/<repository>
- 创建入口文件
创建一个 <user>.github.io
的项目,包含 README.md
或者 index.html
、index.md
文件
- 解析域名
# example.com -> www.example.com -> <user>.github.io
# 创建 A 记录将 example.com 解析到
185.199.108.153
185.199.109.153
185.199.110.153
185.199.111.153
# 设置自定义域名,官方文档建议使用www子域
# 创建 CNAME 记录将 www.example.com 指向 <user>.github.io
# 添加自定义域名后,会自动在项目中创建一个 CNAME 文件
- 访问测试
下载指定文件¶
SVN 是集中式的 VCS,它修复了 CVS(一款更老的集中式VCS)的一些稳定性问题,分为客户端和服务端。
日常可以使用SVN下载Github仓库指定文件
e.g. Ubuntu: apt install subversion
也可以用 svn checkout path/dir
或者 svn co path/dir
来检出文件夹,但是下载文件貌似只能用 svn export path/file