目录

1. 初始设置(首次使用 Git 时)

2. 日常提交工作流程

场景一:已有本地项目,首次连接到远程仓库

场景二:已有远程仓库,克隆到本地

3. 更精细的文件管理

4. 提交信息规范

5. 分支管理策略

6. 高级技巧

7. 团队协作注意事项

8. .gitignore 文件


提交代码到 Git 仓库是版本控制的核心操作。以下是完整的 Git 代码管理流程:

1. 初始设置(首次使用 Git 时)

# 配置用户信息(全局设置,一次即可)
git config --global user.name "你的姓名"
git config --global user.email "你的邮箱"# 检查配置
git config --list

2. 日常提交工作流程

场景一:已有本地项目,首次连接到远程仓库

# 进入项目目录
cd your-project# 初始化本地仓库
git init# 添加远程仓库地址
git remote add origin https://github.com/用户名/仓库名.git# 添加所有文件到暂存区
git add .# 提交更改
git commit -m "初始提交:项目基础结构"# 推送到远程仓库(首次推送需要 -u 参数)
git push -u origin main  # 或 master,取决于你的默认分支名

场景二:已有远程仓库,克隆到本地

# 克隆远程仓库
git clone https://github.com/用户名/仓库名.git# 进入项目目录
cd 仓库名# 进行代码修改...# 添加修改的文件到暂存区
git add 文件名  # 或 git add . 添加所有修改# 提交更改
git commit -m "描述你的修改内容"# 推送到远程仓库
git push origin main

3. 更精细的文件管理

# 查看当前状态(哪些文件被修改/添加/删除)
git status# 查看具体更改内容
git diff# 添加特定文件
git add index.html style.css script.js# 添加所有修改的文件(不包括新文件)
git add -u# 添加所有文件(包括新文件和修改的文件)
git add -A
# 或
git add .# 提交时跳过暂存区,直接提交所有已跟踪文件的修改
git commit -a -m "提交所有修改"# 撤销暂存区的文件(取消 add)
git reset 文件名# 撤销对文件的修改(危险操作,会丢失更改)
git checkout -- 文件名

4. 提交信息规范

提交信息应该清晰明了,遵循约定式提交(Conventional Commits)更好:

类型(范围): 简短描述
详细描述(可选)
突破性变更说明(可选)
关联问题编号(可选)

常见类型:

  • feat: 新功能

  • fix: 修复bug

  • docs: 文档更新

  • style: 代码格式调整

  • refactor: 代码重构

  • test: 测试相关

  • chore: 构建过程或辅助工具变动

示例:

git commit -m "feat(用户认证): 添加第三方登录功能- 实现Google OAuth登录
- 添加Facebook登录支持
- 更新登录页面UIcloses #123"

5. 分支管理策略

# 创建新分支
git branch 新分支名# 切换分支
git checkout 分支名# 创建并切换分支
git checkout -b 新分支名# 查看所有分支
git branch -a# 合并分支
git checkout main
git merge 功能分支名# 删除分支
git branch -d 分支名  # 安全删除(已合并)
git branch -D 分支名  # 强制删除(未合并)

6. 高级技巧

# 修改最后一次提交(追加修改或修改提交信息)
git commit --amend# 暂存当前工作,临时切换分支
git stash        # 暂存修改
git stash pop    # 恢复暂存的修改# 查看提交历史
git log
git log --oneline --graph --all  # 图形化查看# 撤销提交(保留更改)
git reset --soft HEAD~1# 完全撤销提交(丢弃更改)
git reset --hard HEAD~1

7. 团队协作注意事项

  1. 频繁拉取更新:开始工作前先 git pull

  2. 小步提交:每次提交只解决一个问题

  3. 明确提交信息:让他人理解你的修改意图

  4. 使用特性分支:不要在 main/master 分支直接开发

  5. 定期推送:避免本地积压太多未推送的提交

8. .gitignore 文件

创建 .gitignore 文件来排除不需要版本控制的文件:

# 依赖目录
node_modules/
vendor/# 环境配置
.env
.env.local# 日志文件
*.log# 系统文件
.DS_Store
Thumbs.db# 构建输出
dist/
build/

通过遵循这些实践,可以有效地使用 Git 管理代码,保持项目历史清晰可追溯。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/920986.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/920986.shtml
英文地址,请注明出处:http://en.pswp.cn/news/920986.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

go-mapus最简单的离线瓦片地图协作

基于leaflet.jsleaflet-geoman.jsgolangbeegogormsqlitewebsocket等实现一个最简单的地图协作。绘制图元,其他用户浏览器上实施显示绘制和修改结果,大家可同步进行绘制和修改。设置线型和颜色,粗细和透明度。保存到sqlite数据库。动画演示地图…

调式记录之八位机软件串口

现在在上班,做的项目几乎都是关于八位机的,八位机有个挺CD的点硬件资源少,打印之类的需要软件串口,有时候调的刚到很玄学,也有可能是我知识没有学得恨透。首先我得需要发送这句话并在代码里面设置我的延时时间&#xf…

嵌入式学习day40-硬件(1)

嵌入式:以应用为中心:消费电子(手机、蓝牙耳机、智能音响)、医疗电子(心率脉搏、呼吸机)、无人机(大疆DJ)、机器人(人形四足机器人)计算机技术:计算机五大组成:运算器(数…

管理中心理学问:面试中教你识别他人需求动机

“我工作是为了钱,为了吃,住,和用钱买东西。”“我工作是为了地位和认可。”“我工作是为了有所归属,为了成为一个团体的成员。”“我工作是想高升。”“我工作是因为人应该工作,这是唯一的权利。”“我工作为了获取知识和认识世界…

【JavaScript】读取商品页面中的结构化数据(JSON-LD),在不改动服务端情况下,实现一对一跳转

前端实践:从商品页面读取 mpn 并实现一对一跳转 在实际开发中,我们经常会遇到这样一种需求: 用户浏览 A 网站的商品页面后,点击按钮能够直接跳转到 B 网站的对应商品。 表面看似只是一个按钮跳转,但如果不同商品需要精…

HTML5实现好看的邀请函网页源码

HTML5实现好看的邀请函网页源码 前言一、设计来源1.1 邀请函主页1.2 邀请函活动信息1.3 邀请函内容1.4 邀请函活动地址1.5 邀请函活动流程1.6 邀请函活动奖励1.7 邀请函联系我们 二、效果和源码2.1 动态效果2.2 源代码 结束语 HTML5实现好看的邀请函网页源码,酷炫的…

传输层TCP 与 安全层SSL/TLS

本章节主要探讨三个问题:1. SSL/TSL 的区别和联系是什么?2. 我们常说的 “三次握手” 发生在哪个阶段,SSL/TSL层有参与吗?3. HTTPS混合加密发生在哪个层?一、SSL 和 TLS 联系继承关系:TLS 直接基于 SSL 3.0 设计,可以…

【数学建模学习笔记】时间序列分析:ARIMA

零基础看懂 ARIMA 模型:从原理到实战如果你完全没接触过 “时间序列预测”,也不懂复杂公式,这篇会用 “说人话” 的方式帮你搞懂 ARIMA 模型,以及文中代码到底在做什么。一、先搞懂:ARIMA 是用来干嘛的?简单…

【macOS】垃圾箱中文件无法清理的“含特殊字符文件名”的方法

【macOS】垃圾箱中文件无法清理的“含特殊字符文件名”的方法文件名包含特殊字符(如空格、中文符号等)导致终端无法正确识别文件路径。 可以尝试以下解决方法:使用文件路径自动补全输入 rm (注意 rm 后有空格)&#xf…

​​​​​​​Blender 重拓扑修改器实战指南:从基础操作到细节优化​

在 Blender 建模中,重拓扑是解决 “高模难编辑、低模细节差” 的关键。传统手动重拓扑效率低,重拓扑修改器能自动生成规整拓扑,保留模型外形,适合游戏资产、动画角色等场景。 一、核心作用与适用场景​ 重拓扑修改器并非 “一键完…

C/C++哆啦A梦

写在前面 用代码绘制童年记忆中的那个蓝胖子——哆啦A梦,是我对经典角色的一次深情致敬。这段程序不仅是一幅静态图像的生成,更是一次对童年幻想世界的数字重建。通过精确的几何控制与色彩搭配,我将那个圆润可爱、温暖可靠的机器人重新带回眼…

CSS入门指南:30字掌握核心技巧

1. CSS初体验 1.1. CSS定义 层叠样式表 (Cascading Style Sheets,缩写为 CSS) 用来描述 HTML 文档的呈现(美化内容) 1.2. CSS引入方式 内部样式表:学习使用 CSS 代码写在head里面的 style标签 里面 外部样式表&…

从实操到原理:一文搞懂 Docker、Tomcat 与 k8s 的关系(附踩坑指南 + 段子解疑)

目录 一、先分清:Docker、Tomcat、k8s 到底是 “干啥的”? 二、它们的 “合作关系”:从 Java 项目到集群部署的全流程 三、实际应用场景:什么时候该用谁? 1. 单独使用场景 2. 组合使用场景(最常见&…

测试覆盖率不够高?这些技巧让你的FastAPI测试无懈可击!

url: /posts/0577d0e24f48b3153b510e74d3d1a822/ title: 测试覆盖率不够高?这些技巧让你的FastAPI测试无懈可击! date: 2025-09-02T01:49:10+08:00 lastmod: 2025-09-02T01:49:10+08:00 author: cmdragon summary: FastAPI通过TestClient工具支持单元测试,模拟HTTP请求直接…

Qwen3-Reranker-0.6B 模型结构

模型加载 import torch from modelscope import AutoModel, AutoTokenizer, AutoModelForCausalLMtokenizer AutoTokenizer.from_pretrained("Qwen/Qwen3-Reranker-0.6B", padding_sideleft) model AutoModelForCausalLM.from_pretrained("Qwen/Qwen3-Reranke…

无参 MOS 算法的评估方式

一、无参 MOS 算法 在音频处理和质量评估领域,MOS(Mean Opinion Score)是一种常用的主观评价指标,用于衡量音频质量。然而,获取主观 MOS 评分通常需要大量的人力和时间。因此,无参 MOS 算法应运而生&#…

Flowable——配置使用Flowable-UI

文章目录 前言 框架选型与版本 flowable-ui 搭建 依赖引入 springboot 主要版本 flowable 相关 log4j 日志配置项 配置文件 log4j配置文件 application.yml 增加启动类并启动程序 项目整体结构 前言 最近对工作流的flowable比较感兴趣,汇总记录一下相关的研究学习知识点。 框…

2025大学生必考互联网行业证书排名​

在互联网行业蓬勃发展的当下,大学生若想毕业后顺利投身其中,提前考取相关高含金量证书不失为明智之举。这些证书不仅能证明专业能力,还能在求职时为你增添竞争优势。接下来,为大家详细介绍 2025 年大学生必考的互联网行业证书排名…

【并发系列-01】高并发系统架构设计原理

【并发系列-01】高并发系统架构设计原理 1. 业务场景:当双11遇上技术挑战 1.1 问题场景描述 想象一下这样的场景:某电商平台在双11期间,短短30分钟内涌入了500万用户,同时发起了超过2000万次商品查询请求和100万次下单操作。而平时…

【Vue2 ✨】Vue2 入门之旅(八):过渡与动画

前几篇我们学习了事件处理。本篇将介绍 过渡与动画&#xff0c;让 Vue 页面更加生动。 目录 transition 组件进入与离开过渡过渡类名结合 CSS 动画JavaScript 钩子小结 transition 组件 Vue 提供了内置组件 <transition>&#xff0c;可以为元素或组件的进入和离开添加动…