Git入门篇:从零开始掌握版本控制
一、为什么需要版本控制?
假设你正在编写毕业论文,经历了以下场景:
修改引言后,发现之前的版本更好
电脑故障导致三天的工作成果丢失
与导师同时修改同一段落产生冲突
这就是Git要解决的核心问题——代码(文档)的时间旅行与协作管理。
二、环境准备
1. 安装Git
Windows:访问git-scm.com下载安装包
macOS:
brew install git
或使用Xcode Command Line ToolsLinux:
sudo 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)
提示时:
打开冲突文件,定位
<<<<<<< HEAD
标记手动修改冲突内容
删除冲突标记后重新提交
八、进阶技巧
1. 忽略文件配置
创建.gitignore
文件:
# 忽略所有.class文件 *.class # 忽略node_modules目录 node_modules/ # 例外文件(即使匹配前面的规则) !important.config
2. 可视化工具推荐
VSCode内置Git工具
Sourcetree(跨平台GUI)
GitKraken(高级功能支持)
九、学习路线图
基础阶段:掌握add/commit/push/pull
协作阶段:理解分支管理与合并策略
进阶阶段:学习rebase/stash等高级操作
实战阶段:参与开源项目贡献(GitHub PR流程)
动手实验:
在GitHub创建新仓库
本地编写一个Hello World程序
完成首次提交并推送到远程仓库
创建feature分支修改代码后合并到main分支
遇到问题可参考官方文档:git-scm.com/doc
结语
博主之前的课设代码也开源到了Gitee(码云)中,如果有需要的可以一键三连之后私信博主哦!!!