当前位置: 首页 > news >正文

Git 使用规范指南

Learn Git Branching

1Git 基础使用流程


1.1初始化与克隆

# 初始化本地仓库
git init# 克隆远程仓库
git clone <repo_url>

一般拉取代码,直接在文件夹界面打开bash,git clone就行了 


1.2日常开发流程


1拉取最新代码

git pull origin <branch_name>

分支名,拉取远程某个分支代码 


2创建/切换分支

git checkout -b <branch_name>

创建一个新的分支同时切换到新创建的分支


3添加修改文件

git add <file_name>  # 添加单个文件
git add .            # 添加所有改动


4提交代码

git commit -m "符合规范的提交信息"


5推送代码

git push origin <branch_name>


2.代码提交规范


2.1提交前检查


●通过 git diff 确认改动内容
●确保通过代码检查工具(如 ESLint)
●避免提交调试日志、临时文件(如 .idea/)


2.2提交粒度


●原子性提交:每个提交应仅包含一个功能/修复的完整改动
●避免巨型提交:单次提交建议不超过 300 行代码


2.3merge request(合并请求)


保护分支(如:master),禁止直接push。开发同学提交代码至自己分支之后,创建mr由对应仓库管理员进行review后再合入。


3分支命名规范


3.1分支类型前缀

类型

前缀

示例

功能开发

feature/

feature/user-login

Bug 修复

bugfix/

bugfix/login-error

发布分支

release/

release/v1.2.0

热修复

hotfix/

hotfix/db-connection

文档

docs/

docs/api-update

3.2命名规则


●全小写,单词用连字符分隔
●包含关联的 Issue ID(可选):feature/123-add-search


4Commit Message 规范


4.1格式要求

<type>[optional scope]: <description>[optional body][optional footer]


4.2提交类型

类型

说明

feat

新功能

fix

Bug 修复

docs

文档更新

style

代码格式调整(不影响逻辑)

refactor

代码重构

test

测试相关

chore

构建/依赖更新

4.3示例

git commit -m "feat(auth): implement OAuth2 login- Add Google OAuth integration
- Update user schema with social IDsCloses #123"

5最佳实践与工具


5.1推荐实践


●主分支(main)保护:禁止直接 push,必须通过 PR
●使用 rebase 替代 merge 保持提交历史整洁
●定期执行 git gc 清理仓库


5.2辅助工具


●Commitizen: 交互式提交引导工具
●commitlint: Commit Message 校验
●Husky: Git 钩子管理
●Git Flow: 分支管理扩展工具

http://www.xdnf.cn/news/777367.html

相关文章:

  • Elasticsearch + Milvus 构建高效知识库问答系统《一》
  • 为什么 uni-app 开发的 App 没有明显出现屏幕适配问题Flutter 开发的 App 出现了屏幕适配问题
  • Java编程之建造者模式
  • [Java 基础]Java 语言的规范
  • 【如何在IntelliJ IDEA中新建Spring Boot项目(基于JDK 21 + Maven)】
  • [Java 基础]选英雄(配置 IDEA)
  • 深入理解汇编语言中的顺序与分支结构
  • Python+requests+pytest+allure自动化测试框架
  • 鸿蒙UI开发——组件的自适应拉伸
  • 深入解析 Flask 命令行工具与 flask run命令的使用
  • Spark 单机模式部署与启动
  • RAG架构中用到的模型学习思考
  • AWS App Mesh实战:构建可观测、安全的微服务通信解决方案
  • AWS VPC 网络详解:理解云上专属内网的关键要素
  • [java八股文][JavaSpring面试篇]SpringCloud
  • 【java】springboot注解关键字
  • 通过基于流视频预测的可泛化双手操作基础策略
  • grpc的二进制序列化与http的文本协议对比
  • Java高级 | (二十二)Java常用类库
  • R语言使用随机过采样(Random Oversampling)平衡数据集
  • LeetCode Hot100刷题——完全平方数
  • Shell脚本编程
  • java反序列化:CC5利用链解析
  • 由docker引入架构简单展开说说技术栈学习之路
  • pikachu靶场通关笔记12 XSS关卡08-XSS之htmlspecialchars(四种方法渗透)
  • SpringBoot中缓存@Cacheable出错
  • 机电工程常用设备
  • Spring AOP:面向切面编程 详解代理模式
  • C++ Vector算法精讲与底层探秘:从经典例题到性能优化全解析
  • Flink03-学习-套接字分词流自动写入工具