三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

Git开发必备技能:从单机笔记到多人协作的版本控制实战

Git开发必备技能:从单机笔记到多人协作的版本控制实战

一、痛点:你的项目目录真的“工程化”吗?

很多初学者习惯把项目文件堆在一个文件夹里,比如叫lgl_ai的目录。这在单人学习时似乎没问题,但一旦遇到以下场景就原形毕露:

  • 多人协作:你改一行代码,我改另一行,怎么合并?发微信传压缩包?

  • 单机风险:硬盘坏了,所有历史修改瞬间归零。

  • 版本混乱:想找回三天前的一个功能实现,却发现文件已经被覆盖了。

这背后的核心问题是:没有版本控制。文件只是文件,不是有历史记录、可回溯的“版本”。

二、版本控制是什么?——给文件装上“时光机”

简单说,版本控制就是记录一个文件或一组文件在不同时间的“快照”,以便你随时可以回到某个历史状态。

而Git是目前最流行的分布式版本控制系统。注意“分布式”三个字:

  • 传统中央仓库(SVN模式):只有一台中央服务器有完整历史,客户端只认最新版。

  • Git分布式:每个人的电脑上都有一个完整的代码仓库(包括所有历史)。中央仓库(GitHub/Gitee/GitLab)只是团队协作的“约定集散地”。

这意味着:就算中央服务器挂了,任何一个人的本地仓库都可以恢复全部代码和历史。

三、Git基础实操:从零建立版本管理

1.git init—— 让普通目录晋升为仓库

打开终端,进入你的项目目录,执行:

git init

你会发现目录下多了一个.git文件夹(默认隐藏)。这就是Git的“心脏”,所有版本信息、配置都存这里。

⚠️ 警告:不要乱改.git里的文件,除非你懂Git的内部结构。

💡 小技巧:在Windows上建议使用Git Bash,它提供了一个最精简的Linux环境,命令习惯统一。

执行ls -all就能看到这个隐藏文件夹。

2.git add—— 把文件放入“暂存区”

git add readme.md

这条命令把readme.md添加到了暂存区(stage)。终端会提示类似2 insertions的信息,说明检测到了2行新增内容。

为什么需要暂存区?—— 为了让你能分批、有组织地提交

3.git commit—— 真正生成一个版本

git commit -m "添加项目说明文档"

-m后面的描述非常非常重要。团队Leader主要靠这个理解你本次改动的目的。不要写“更新”、“修改”这种废话,要写“修复登录页密码框闪烁问题”、“增加用户头像上传功能”这样有信息量的话。

至此,一个版本正式被记录到了仓库中。

四、为什么一定要分addcommit两步?

这是新手最常问的问题。直接原因:一个版本往往由多个文件的改动组成

举例:你要完成“首页页面功能”,可能需要改:

  • index.html

  • common.css

  • common.js

你当然可以一个一个add,但直到你执行commit之前,仓库都还没有产生新版本。这给了你极大的灵活性:

git add index.html git add common.css # 突然发现 common.js 改错了,想放弃这次提交? git reset # 可以取消暂存,重新改 git add common.js # 改好后重新添加 git commit -m "首页页面功能"

工作流程总结

  • add多次:积累改动

  • commit一次:形成一个完整的、有意义的版本

五、git status—— 你最该频繁使用的命令

在任何不确定当前仓库状态的时候,立刻执行:

git status

它会清晰告诉你:

  • 哪些文件是untracked(未跟踪,全新文件)

  • 哪些文件是to be committed(已暂存,待提交)

  • 哪些文件被修改了但还没add

一个好习惯:关键时刻(切换分支、拉取代码、提交前)先git status看一眼,能避免90%的误操作。

六、文件的四种状态(重要)

Git将文件状态分为四类,理解这个就能掌握Git的精髓:

状态含义举例
untracked新文件,从未被Git管理过你新建了一个test.py
modified已被追踪的文件发生了修改,但未暂存改了readme.md还没add
staged已暂存,等待提交执行了git add后的文件
committed已提交,安全保存在仓库中执行了git commit

追求的目标:保持仓库干净 —— 即所有改动要么已经committed,要么是合理的工作区修改。不要留下一堆未暂存、未提交的半成品。

七、迈向团队协作:添加远程仓库

一个人的版本控制是开始,真正的威力在于多人协作。

# 添加一个远程仓库地址(以GitHub为例) git remote add origin https://github.com/你的用户名/项目名.git # 把本地代码推送到远程 git push -u origin main

之后队友就能git clone下来,大家各自提交,再git push/git pull同步。

八、总结:几条黄金习惯

  1. 任何改动前先git status,像开车前看后视镜一样自然。

  2. 一个功能一个提交,不要一次提交几十个不相关的文件。

  3. 提交信息(commit message)要清晰,团队Leader真的会看。

  4. addcommit,暂存区是你的后悔药。

  5. 不要把.git文件夹删了,除非你想自毁时光机。

Git不难,难的是一开始建立正确的工程习惯。从今天起,告别“最终版_final_真最终版_v2.doc”,让你的代码进入版本控制的文明时代。

← 返回列表