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

Git入门篇

Git入门篇:从零开始掌握版本控制


一、为什么需要版本控制?

假设你正在编写毕业论文,经历了以下场景:

  1. 修改引言后,发现之前的版本更好

  2. 电脑故障导致三天的工作成果丢失

  3. 与导师同时修改同一段落产生冲突

这就是Git要解决的核心问题——代码(文档)的时间旅行与协作管理


二、环境准备

1. 安装Git

  • Windows:访问git-scm.com下载安装包

  • macOSbrew install git 或使用Xcode Command Line Tools

  • Linuxsudo apt-get install git (Debian/Ubuntu)

2. 基础配置

# 设置全局用户名
git config --global user.name "Your Name"

# 设置全局邮箱
git config --global user.email "your.email@example.com"

# 查看配置
git config --list

三、核心概念图解

graph LR
A[工作区] --> B[暂存区]
B --> C[版本库]
D[远程仓库] --> C
C --> D
  • 工作区:本地文件目录

  • 暂存区:准备提交的临时存储区

  • 版本库:存储所有提交历史的.git目录

  • 远程仓库:云端代码托管平台(GitHub/Gitee等)


四、基础操作全流程

1. 创建仓库

# 初始化新仓库
git init my-project
cd my-project

# 查看仓库状态
git status

2. 首次提交

# 创建测试文件
echo "# My First Git Project" > README.md

# 添加到暂存区
git add README.md

# 提交到版本库
git commit -m "Initial commit"

3. 查看历史

git log --oneline  # 简洁版日志
git log --graph    # 图形化分支历史

五、分支管理

1. 基础操作

# 创建并切换到新分支
git checkout -b feature-login

# 查看当前分支
git branch

# 合并分支到main
git checkout main
git merge feature-login

# 删除已合并分支
git branch -d feature-login

2. 典型工作流

# 推荐的分支策略
main(稳定版)
├── develop(开发主分支)
│   ├── feature/user-auth(功能分支)
│   └── feature/payment(功能分支)
└── hotfix/urgent-bug(紧急修复分支)

六、远程仓库实战

1. 关联远程仓库

# 添加远程仓库地址
git remote add origin https://github.com/yourname/repo.git

# 首次推送
git push -u origin main

2. 日常协作流程

# 拉取最新代码
git pull origin main

# 解决冲突后提交
git add .
git commit -m "Merge conflicts resolved"
git push

七、常见问题急救包

1. 撤销修改

# 撤销工作区修改
git checkout -- filename

# 撤销暂存区修改
git reset HEAD filename

# 回退到指定提交
git reset --hard commit_id

2. 代码冲突解决

当出现CONFLICT (content)提示时:

  1. 打开冲突文件,定位<<<<<<< HEAD标记

  2. 手动修改冲突内容

  3. 删除冲突标记后重新提交


八、进阶技巧

1. 忽略文件配置

创建.gitignore文件:

# 忽略所有.class文件
*.class

# 忽略node_modules目录
node_modules/

# 例外文件(即使匹配前面的规则)
!important.config

2. 可视化工具推荐

  • VSCode内置Git工具

  • Sourcetree(跨平台GUI)

  • GitKraken(高级功能支持)


九、学习路线图

  1. 基础阶段:掌握add/commit/push/pull

  2. 协作阶段:理解分支管理与合并策略

  3. 进阶阶段:学习rebase/stash等高级操作

  4. 实战阶段:参与开源项目贡献(GitHub PR流程)


动手实验

  1. 在GitHub创建新仓库

  2. 本地编写一个Hello World程序

  3. 完成首次提交并推送到远程仓库

  4. 创建feature分支修改代码后合并到main分支

遇到问题可参考官方文档:git-scm.com/doc

结语

        博主之前的课设代码也开源到了Gitee(码云)中,如果有需要的可以一键三连之后私信博主哦!!!

相关文章:

  • 02-阿里云与HTTP协议
  • c++进阶之----c++11(可变参数模板)
  • 学习计划:从MCP入门到项目构建的全面指南
  • Vue.js 中 v-show 的使用及其原理
  • C++ -异常之除以 0 问题(整数除以 0 编译时检测、整数除以 0 运行时检测、浮点数除以 0 编译时检测、浮点数除以 0 运行时检测)
  • 0.机器学习基础
  • SpringBoot整合MinIO快速入门:实现分布式文件存储与管理
  • QTSql全解析:从连接到查询的数据库集成指南
  • LCR 056. 两数之和 IV - 输入二叉搜索树
  • 工业4.0时代,RK3562工控机为何成为智慧工位首选?
  • PostgreSQL的内存管理机制
  • 《Operating System Concepts》阅读笔记:p587-p596
  • 弹簧质点系统(C++实现)
  • 平均标准差策略思路
  • CExercise_07_1指针和数组_1编写函数交换数组中两个下标的元素
  • 谈谈模板方法模式,模板方法模式的应用场景是什么?
  • LLM+js实现大模型对话
  • 判断矩阵A是否可以相似对角化
  • MySQL 在 CentOS 7 环境安装完整步骤
  • 任务调度和安全如何结合
  • 梅花奖在上海|朱洁静:穿越了人生暴风雨,舞台是最好良药
  • 中信银行:拟出资100亿元全资设立信银金融资产投资有限公司
  • 中美“第二阶段”贸易协定是否会在会谈中提出?商务部回应
  • 首届上海老年学习课程展将在今年10月举办
  • 纪念苏联伟大卫国战争胜利80周年阅兵彩排,解放军仪仗队亮相
  • 公募基金改革八大要点:建立浮动管理费收取机制、降低规模排名考核权重