从零开始的 Git 使用指南:把你的代码装进“时空胶囊”

0 阅读7分钟

这是一篇专门为小白准备的 Git 保姆级教程。我会用最专业的视角,最慢的节奏,把每一个操作拆解成“人话”。

🎓 从零开始的 Git 使用指南:把你的代码装进“时空胶囊”

🚨 前言:别再给你的代码改名了

如果你还在用这种方式管理代码:

  • 项目_final.py
  • 项目_final_v2.py
  • 项目_final_v2_真的最后版.py
  • 项目_final_v2_真的最后版_改了个Bug.py 那你必须学 Git。 Git 不是一个简单的“保存按钮”,它是程序员的时光机。它允许你随意穿梭在过去和未来,允许你在平行宇宙(分支)里做实验,最后还能把这些宇宙合并起来。 今天,我就带你从零开始,一步步搭建你的时光机。

📜 目录(慢慢看,别急)

  1. 第一章:安装与配置——给你的时光机做“出厂设置”
  2. 第二章:核心概念——工作区、暂存区、仓库,这到底是啥?
  3. 第三章:基础操作——存档、查看历史、回退
  4. 第四章:分支管理——平行宇宙的开启与合并
  5. 第五章:远程协作——把代码送上 GitHub
  6. 第六章:高级操作——当你手滑的时候怎么救
  7. 结语:现在,你是真正的开发者了

一、第一章:安装与配置——给你的时光机做“出厂设置”

1. 下载安装

去 Git 官网下载对应系统的安装包,一路 Next 即可。安装完后,你的鼠标右键菜单里会多出一个 “Git Bash Here”,这就是你的控制台。

2. 必须做的“自报家门”

Git 需要知道是谁在操作。这就像你在玩游戏前要创建角色一样。 打开 Git Bash,输入以下两行命令(把内容换成你自己的):

git config --global user.name "Your Name"
git config --global user.email "email@example.com"
  • --global:意思是这台电脑上所有的 Git 项目都用这个身份。
  • 为什么要填? 因为以后你的每一次“存档”,都会记录是谁存的。如果是团队协作,别人看到存档就知道是谁干的。

二、第二章:核心概念——工作区、暂存区、仓库,这到底是啥?

这是小白最容易晕的地方。我用一个**“搬家”**的比喻来讲清楚。 假设你正在家里(工作区)收拾行李:

  1. 工作区
    • 就是你现在写代码的文件夹。你新建了一个文件,改了一行代码,这都发生在工作区。
    • 比喻:你乱糟糟的房间,东西到处都是。
  2. 暂存区
    • 你把想带走的东西整理好,放进了一个行李箱。这个行李箱就是暂存区。
    • 操作git add 命令,就是把文件放进行李箱。
    • 为什么要暂存? 因为有时候你改了 10 个文件,但只想提交其中的 3 个。暂存区就是让你挑选哪些改动要被“正式记录”。
  3. 版本库
    • 你把行李箱封好,贴上标签(“2024年春节回家”),放进仓库里永久保存。这就是版本库。
    • 操作git commit 命令,就是把行李箱正式入库。 记住流程: 工作区 --(git add)--> 暂存区 --(git commit)--> 版本库

三、第三章:基础操作——存档、查看历史、回退

1. 创建仓库

找一个空文件夹,或者你已有的项目文件夹,右键打开 Git Bash,输入:

git init

你会看到多了一个 .git 文件夹。千万别删它! 它就是你的时光机引擎。此时,这个文件夹已经成为了一个 Git 仓库。

2. 添加文件到暂存区

现在,你在文件夹里新建了一个 readme.txt

  • 查看状态
    git status
    
    你会看到 readme.txt 是红色的,说明它还在“房间”里,没进“行李箱”。
  • 放入行李箱
    git add readme.txt
    
    git status,文件名变绿了。恭喜,它已经进了暂存区,准备入库。

    技巧git add . 可以把当前目录下所有改动的文件都加进去。

3. 正式存档

文件在暂存区,还没真正生成历史记录。我们需要“提交”。

git commit -m "写了第一行说明文档"
  • -m 后面跟的是说明信息
  • 专业提示:作为一名全栈开发者,提交信息要写得清晰,比如“修复登录Bug”、“添加用户API”,别写“嘻嘻”、“哈哈”。

4. 查看历史日志

你想看你存了多少次档:

git log

你会看到一大串乱码(Commit ID),那就是每个存档的唯一编号,还有提交人、时间、说明。

5. 版本回退(时光倒流)

如果你觉得现在的代码改烂了,想回到昨天那个版本:

  1. git log 找到你想回去的那个版本的Commit ID(比如 a1b2c3d)。
  2. 执行:
    git reset --hard a1b2c3d
    
    唰!你的代码瞬间变回那个版本的样子。

四、第四章:分支管理——平行宇宙的开启与合并

这是 Git 最强大的功能,也是专业开发者的标志。 比喻: 你在写一本小说(主分支 master/main)。突然你有个大胆的想法,想给主角安排一段奇遇,但又怕写崩了影响正文。 于是你复印了一份原稿,另起炉灶开写(创建新分支 dev)。

  • 如果写得好,你就把这段奇遇剪下来,贴回原稿里(合并分支)。
  • 如果写崩了,直接把复印件扔了(删除分支),原稿毫发无损。

1. 创建与切换分支

# 创建并切换到新分支 dev
git checkout -b dev
  • checkout -b:创建并切换。
  • 现在你在 dev 分支上写的所有代码,都不会影响 master 分支。

2. 切换回主分支

写完实验,觉得还行,切回主线:

git checkout master

3. 合并分支

dev 的成果合并到 master

git merge dev

此时,master 就拥有了 dev 的所有改动。

4. 删除分支

实验结束,清理战场:

git branch -d dev

五、第五章:远程协作——把代码送上 GitHub

本地存档还不够,万一硬盘坏了呢?我们需要云端备份,这就是 GitHub。 你的 GitHub 地址是 https://github.com/badhope,我们要把本地代码推上去。

1. 关联远程仓库

在 GitHub 上新建一个空仓库,然后复制仓库地址(HTTPS 或 SSH)。 在本地输入:

git remote add origin https://github.com/badhope/你的仓库名.git
  • origin:给远程仓库起的别名,大家都这么叫。

2. 推送代码

把本地的 master 分支推上去:

git push -u origin master
  • -u:记住关联关系,下次直接 git push 就行。 以后,每次你本地 commit 完,敲一行 git push,代码就上传到了 GitHub。这就是云端同步

六、第六章:高级操作——当你手滑的时候怎么救

1. 撤销修改

你改了代码,还没 add,突然后悔了,想撤销:

git checkout -- 文件名

这会让文件回到最近一次 commitadd 时的状态。

2. 撤销暂存

你改了代码,已经 add 进暂存区了,但还没 commit,想拿出来:

git reset HEAD 文件名

文件会变回“已修改但未暂存”的状态(红色)。

3. 藏匿当前工作

你正在 dev 分支写新功能,突然 master 出了紧急 Bug 要修。但你的新功能写了一半,不能提交,怎么办?

git stash

这招叫“月步”。它把你当前的改动(不管是工作区还是暂存区)全部打包藏起来,让工作区变干净。 去修完 Bug,切回来,恢复现场:

git stash pop

刚才写了一半的代码又回来了!

七、结语:现在,你是真正的开发者了

Git 的命令远不止这些,但掌握了上面这些,你已经能应对 90% 的开发场景了。 作为一个数据科学与大数据专业的学生,你的代码量会越来越大,项目会越来越复杂。Git 是你管理这一切的基石。

别再给文件改名叫 final_v2 了。

用 Git,给你的每一个里程碑都立一块碑。

现在,打开你的终端,敲下你的第一个 git init 吧。 🚀