掌握 Git 基础

掌握 Git 基础:从单机开发到团队协作的必备技能

如果你还在用复制文件夹、加时间戳的方式来管理代码,那么你该认识 Git 了。


一、为什么我们需要 Git?

1.1 你的项目目录存在哪些问题?

假设你有一个项目目录叫 jdx_ai,里面放着你的代码文件。平时一个人开发时可能觉得没什么,但仔细想想:

  • 无法多人协作 -- 你修改文件时,同事也在改,最后只能靠微信发来发去,合并痛苦。
  • 没有版本概念 -- 硬盘坏了怎么办?想找回昨天的代码怎么办?靠 Ctrl+Z 可不行。
  • 不够工程化 -- 缺少分支、标签、日志,代码管理像"手工作坊"。

1.2 版本控制的本质

版本控制就是记录文件随时间变化的一系列"快照",你可以随时回到历史中的任意一个状态。

  • 本地版本控制(如 RCS)-- 单人可用,但无法协作。
  • 集中式版本控制(如 SVN)-- 有中央服务器,但服务器宕机就全完蛋。
  • 分布式版本控制(如 Git)-- 每个开发者本地都有完整仓库,中央仓库只是大家协作的"桥头堡"。

二、Git 起步:初始化一个仓库

2.1 git init -- 让普通文件夹变成代码仓库

在项目目录下执行:

bash 复制代码
git init

你会看到提示:Initialized empty Git repository in .../.git/

此时目录下多了一个 .git 隐藏文件夹(千万不要乱改里面的内容!)。

小技巧 :在项目目录右键打开 Git Bash(Windows 用户),可以获得一个轻量的 Linux 环境,方便执行 Git 命令。


三、Git 基本工作流:三个区域

scss 复制代码
工作区 (Working Directory)
    ↓ git add
暂存区 (Stage / Index)
    ↓ git commit
本地仓库 (Repository)
    ↓ git push
远程仓库 (Remote)

3.1 git add -- 把改动放入暂存区

bash 复制代码
git add readme.md        # 添加单个文件
git add .                # 添加当前目录所有改动(不含被忽略文件)
git add -A               # 添加所有改动(包括删除和重命名)

为什么要 add 再 commit ?

  • 你可以分批次添加多个相关文件,它们会一起被提交成一个"逻辑任务"。
  • commit 之前,你随时可以用 git reset 取消暂存,相当于给了你一次"反悔"的机会。

3.2 git commit -- 生成一个永久版本

bash 复制代码
git commit -m "完成首页布局"
  • -m 后面跟的是提交说明,一定要写清楚这次改动做了什么。
  • 提交说明是团队协作的沟通语言,不要写 "update"、"fix" 这种无意义的话。

一个好习惯 :每次 git add 多次,git commit 一次,代表完成一个完整的小功能。

3.3 git status -- 随时查看仓库状态

bash 复制代码
git status

这个命令会告诉你:

  • 哪些文件是 未跟踪(Untracked)
  • 哪些文件是 已修改但未暂存
  • 哪些文件 待提交(to be committed)

四、文件的生命周期

在 Git 中,每个文件有四种状态:

状态 说明
未跟踪(Untracked) 新文件,从未被 Git 管理过
已跟踪(Tracked) 已被 Git 管理
已修改(Modified) 文件内容改变但未暂存
已暂存(Staged) git add,等待提交

五、远程仓库:实现多人协作

5.1 为什么需要中央仓库?

本地 Git 已经能管理版本,但无法和别人协同 。于是我们引入远程仓库(GitHub / Gitee / GitLab)。

  • 团队每个人先把远程仓库克隆到本地
  • 各自开发,commit 到本地
  • 最后 push 到远程,pull 别人的更新

5.2 关联远程仓库

bash 复制代码
git remote add origin https://github.com/你的用户名/仓库名.git

然后就可以 git push -u origin main 把本地代码推送到远程。


六、一些实用建议

  1. 保持仓库干净 :不要把编译产物、依赖包、本地配置等提交到 Git,使用 .gitignore 文件。
  2. 频繁 commit:每完成一个小功能就 commit,不要积攒一堆代码再提交。
  3. 写好 commit message :推荐使用 type: subject 格式,例如 feat: 增加登录页面
  4. 多用 git status :不确定当前状态时,先跑一遍 git status

提交内容要加上备注,可以更加增加仓库的可读性,让仓库管理更规范


七、总结

通过这篇文章,你应该已经掌握了 Git 最核心的几个概念:

  • ✅ 为什么要用版本控制(解决单机、协作、版本问题)
  • git init 初始化仓库
  • git add + git commit 两步提交
  • git status 随时查看状态
  • ✅ 文件的生命周期(未跟踪 → 暂存 → 已提交)
  • ✅ 远程仓库的基本思想

Git 的学习曲线虽然略陡,但一旦上手,你会爱上这种丝滑的版本管理体验

下一次文章,我们将深入讲解分支管理(git branch / git merge),以及如何处理合并冲突。敬请期待!


如果你觉得本文对你有帮助,欢迎点赞、收藏、评论,让更多人看到!

我是 [kisshyshy],一名热爱分享技术的开发者。

相关推荐
全糖可乐气泡水5 小时前
Codex适配国产信创环境安装部署与技术适配全解析
开发语言·git·python·算法·百度
一只大袋鼠7 小时前
Git 四种仓库连接方式操作指南
git
活宝小娜10 小时前
git windows安装教程
git
青春喂了后端12 小时前
Go Sidecar Repository 并发锁改造:让并发请求安全地进入 Git 仓库层
git·安全·golang
小雨青年12 小时前
GitHub Actions 工作流性能优化实战,先看瓶颈,再改缓存和并发
git
0x000713 小时前
Git Bash 中无法启动 Claude Code ?
开发语言·git·bash
xuhaoyu_cpp_java14 小时前
Git学习(六)
git·学习
happyness441 天前
Git:AI编程时代的“安全带“与“时光机“
git·ai编程
To_OC1 天前
踩坑无数!终于捋顺Git基础核心工作流(新手必看)
git·程序员