Skip to content
Go back

Git提交规范

Published:  at  05:17 AM

良好的代码习惯是保持项目高质量的关键

Table of contents

Open Table of contents

Step 1: Fork 仓库

操作:登录 GitHub,找到目标仓库,点击右上角”Fork”按钮,将仓库复制到个人账户。
结果:在 GitHub 上拥有原仓库的副本。

Step 2: Git 设置与下载

2.1、克隆 Fork 的仓库到本地(使用 SSH URL 或 HTTPS),对自己的Fork仓库在本地进行工作

git clone git@github.com:<Your-Username>/<Repo-Name>.git

git clone会自动执行

git remote add origin git@github.com:<Your-Username>/<Repo-Name>.git

origin 就是本地仓库默认的远程仓库名称。

2.2、添加原仓库(Fork 的源仓库)作为 upstream 远程

git remote add upstream git@github.com:<Original-Owner>/<Repo-Name>.git

2.3、获取 upstream 数据。Fork 仓库不会自动同步原仓库的变更,需要手动拉取更新

git fetch upstream

2.4、切换到本地 main 分支,准备进行合并操作

git checkout main  # 或 master,取决于项目默认分支

2.5、将原仓库 (upstream) 的最新代码合并到本地的 main 分支

git merge upstream/main

Step 3: 创建并发布工作分支

3.1、创建并切换到新分支,遵循命名规则

git checkout -b <type>/<issue|issue-number>/{<additional-fixes>} # 相当于git branch <branch-name> git checkout <branch-name>

分支命名规则:

示例:feat/123/add-login-auth 表示 issue #123 的新功能分支。

3.2、推送分支到 Fork 仓库

git push origin <type>/<issue|issue-number>/{<additional-fixes>}

一个分支应专注于一个逻辑变更(如一个功能或修复)。

工作完成后

Step 4: 提交和推送更改

4.1、确认当前分支

git branch

4.2、同步 upstream 主分支,原仓库的主分支可能会有更新,使用 git fetch 和 git merge 确保自己的工作不会与这些更新产生冲突

git fetch upstream
git merge upstream/main

4.3、编辑文件后添加更改

git add .

4.4、提交更改,使用规范(Git提交信息规范)的提交信息

git commit -m ""

4.5、再次同步(确保无冲突)

git fetch upstream
git merge upstream/main

4.6、推送更改到 Fork 仓库

git push origin <type>/<issue|issue-number>/{<additional-fixes>}

Step 5: 在 GitHub 上创建 Pull Request

操作:

在 GitHub 上访问 Fork 仓库。

注意: 不要自行合并 PR,除非管理员明确要求。
检查项目指南,可能有分支命名或 PR 提交要求(Scott 建议)。

Step 6: PR 合并后的清理

6.1、删除本地分支。删除已经完成工作或已经合并到主分支的分支,保持分支列表简洁,减少混乱。

git branch -d <type>/<issue|issue-number>/{<additional-fixes>}

6.2、删除 Fork 仓库中的远程分支。一旦分支上的工作完成并且已合并到主分支,删除远程分支是为了避免积累过多的未使用分支,保持仓库干净整洁。

git push --delete origin <type>/<issue|issue-number>/{<additional-fixes>}

6.3、切换到主分支

git checkout main

6.4、从原仓库(upstream)的主分支拉取最新的更改并合并到本地的 main 分支。确保本地的主分支是最新的,包含了所有来自原仓库的更改。

git pull upstream main

6.5、更新 Fork 仓库的主分支

git push origin main

Step 7: 保持 Fork 同步

7.1、定期同步。Fork 不会自动与原仓库同步,需手动执行。

git checkout main
git pull upstream main
git push origin main

OTHER

Git提交信息规范

示例

git commit 
-m "Git Submission Topics" 
-m "
Use the body to explain what and why
Resolves: #Issue No."

提交类型参考表

类型描述适用场景
feat新功能添加新功能或特性
fix修复修复 bug 或问题
docs文档更新文档或注释
style样式代码格式调整(不影响逻辑)
refactor重构改进代码结构(不改功能)
test测试添加或修改测试
perf性能提升性能的更改
ci持续集成修改 CI/CD 配置
revert回退撤销之前的提交
chore杂务日常维护任务(不涉及源码)


Previous Post
纯 JavaScript 节流和防抖函数
Next Post
调试技术整理