Git|01 Git 的认知

一、定位

Git 是一个开源的分布式版本控制系统,由 Linus Torvalds(林纳斯·托瓦兹,Linux 之父)开发。起初是用来帮助 管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

可以形象比喻:把项目当作单机游戏,Git 版本控制相当于这个单机游戏的存档点,代码可以回滚到以往的任意存档点。

现如今的 vibe coding 时代,Git 工具显得极其重要。Git + 云备份(远程仓库)的双重保险是能撒手让 AI 干活改代码的底气。



二、安装与配置

Windows 官网安装链接:https://github.com/git-for-windows/git/releases/download/v2.55.0.windows.3/Git-2.55.0.3-64-bit.exe

验证安装是否成功:

1
git --version

(一)配置用户信息

1
2
git config --global user.name "昵称"
git config --global user.email "邮箱"

去掉 --global 参数就是项目级的配置信息,项目级 > 全局级。也就是说,每个仓库都可以有不同的呢称和邮箱,不设置时使用全局级信息。

查看配置信息可以用 git config --list 或者:

1
2
git config --global user.name
git config --global user.email

同理,不加 --global 时,默认操作的是当前仓库(项目)的 Local 配置,即 .git/config。


(二)初始化

git init :对项目行进初始化,则该项目就可以用 git 管理,并生成 .git 文件夹。
20260802-0858-53.6079846.gif

若没有 .git 文件夹,则需要勾选启用 “隐藏的项目”
6ea1a35b-c883-4d6a-aad5-5a60099c0bef.png

等效图形化操作
182fafa8-0860-4c01-a521-fdc7d964277c.png


三、vscode 自带的 git 管理树

屏幕截图 2026-08-02 171637.png
e25c6323-4dd5-4cbd-9ed8-27ed84711e41.png

字母 英文 中文 说明
U Untracked 未跟踪 新建文件,还没有被 Git 管理(git add 后消失)
M Modified 已修改 文件已修改,但还没有提交
D Deleted 已删除 文件被删除

一次 commit(提交) 流程

  1. 从工作区添加文件都暂存区
    git add .(目录下的全部文件) 或者 git add <文件>(指定文件)

  2. 从暂存区提交到本地仓库
    git commit -m "提交信息"

  3. 对于已经被 Git 跟踪(Tracked)的文件,可以使用 git commit -am "提交信息" 一步完成“暂存 + 提交”,但 git commit -am 不会提交新建(U)的文件。


一次本地提交的 vscode 等效操作

红框内填入提交信息,Ctrl + Enter完成提交,形成一个“存档点”(快照)
30a17dc3-04e2-4ddc-b831-2fd132afd7b1.png
85ce43bd-1b29-48ae-beca-79949e521692.png


四、推送远程做云备份(非必要)

一次关联远程的流程

  1. 远程新建仓库(GitHub、Gitee等)
    c0098a90-30db-49ba-bbda-102ec6c85808.png
  2. 填写仓库名以及选择是否公开仓库
  3. 将本地仓库关联远程仓库:git remote add origin https://github.com/<GitHub用户名>/<仓库名>.git
  4. git remove -v 验证是否关联成功
  5. 推送(push)远程
  6. 初次推送:git push --set-upstream origin main(或简写 git push -u origin main)
  7. 后续推送:git push
  8. 上面出现的 origin 是社区约定俗成的远程仓库默认名称,可以改成其他,只需把 git remote add origin https://github.com/<GitHub用户名>/<仓库名>.git 中的 origin 改成其他
  9. git 树出现紫色云,说明关联远程;且紫云和蓝云在同一个提交节点,说明本地进度与远程同步;蓝云提前紫云,说明本地领先远程;紫云提前蓝云,说明远程领先本地
    d35dabf5-2985-442e-bccf-420685a5ec94.png
    7ee8c203-715f-4a2d-8f6c-680ecb805fc3.png

vscode 的等效操作

5ac34075-0b9a-413f-8389-be4a2b7ec0d1.png