这篇 Git 教程太清晰了,很多 3 年经验程序员都收藏了

19 阅读4分钟

引言

📌 Git 是现代开发中不可或缺的版本控制工具,尤其适用于团队协作和代码管理。本文将带你了解 Git 的基础操作命令,包括 git initgit addgit commitgit diffgit log.gitignore 等,快速上手版本控制。


🛠️ 一、初始化仓库:git init

使用 Git 前,需先初始化一个本地仓库:

git init

执行后会在当前目录生成一个 .git 文件夹,Git 会在此目录下跟踪项目的变更记录。


👤 二、配置用户信息

首次使用 Git 时,推荐设置用户名和邮箱:

git config --global user.name "xxxxx"
git config --global user.email "xxxx@qq.com"

加上 --global 会全局生效,仅对当前项目配置可以省略该参数。


📦 三、代码暂存区(Staging Area)是什么?

Git 的提交操作分为两个阶段:暂存(staging)提交(commit)

  • 当你修改了文件,Git 并不会立即记录这些改动;
  • 你需要先使用 git add 命令,把改动“放进暂存区”,告诉 Git:“这些改动我准备好了,可以提交”;
  • 然后再使用 git commit 将暂存区的内容提交到本地仓库,记录为一个快照。

🧠 可以把暂存区类比为“快照准备区”,你可以反复修改文件、添加到暂存区,最后一口气提交,确保每次提交都是有意义的逻辑单元。

🎯 举个例子:

# 修改了 index.html 和 style.css
git add index.html      # 把 index.html 放入暂存区
git add style.css       # 再把 style.css 放入暂存区
git commit -m "更新首页结构和样式"  # 一起提交

💡 小贴士:你可以分批使用 git add 管理暂存内容,按逻辑分组提交更利于协作和回溯。


📝 四、查看当前状态:git status

在进行任何修改之前,查看当前仓库的状态是非常重要的。git status 是最常用的命令之一,能让你清楚了解哪些文件被修改了,哪些文件已加入暂存区,哪些文件未被跟踪。

git status

它的输出通常会分为三部分:

  1. 已暂存的文件:这些文件已使用 git add 添加到暂存区,准备提交。
  2. 未暂存的文件:这些文件被修改,但还未添加到暂存区。
  3. 未跟踪的文件:这些文件是新创建的,Git 并未跟踪它们。

例如:

On branch main
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)
        modified:   index.html
        new file:   style.css

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   app.js

🎯 通过 git status,你可以随时了解当前工作区和暂存区的状态,帮助你决定接下来的操作。


📥 五、添加文件到暂存区:git add

当你修改或新增文件后,使用 git add 将其添加到 Git 的暂存区:

git add 文件名

也可以批量添加所有修改:

git add .

💾 六、提交更改:git commit -m

将暂存区的内容提交至本地仓库:

git commit -m "提交说明"

-m 后面是提交信息,建议语义清晰,例如:

git commit -m "新增用户登录功能"

🚀 七、推送到远程仓库:git push origin main

本地提交之后,需要推送代码到远程仓库(如 GitHub、Gitee):

git push origin main
  • origin 是默认的远程仓库别名;
  • main 是目标分支名(如果你使用的是 master,请替换);

✅ 提交后远程成员就可以拉取(pull)你最新的修改了。

🔗 如果你还没有远程仓库,请先去 GitHub / Gitee 创建一个,然后关联远程仓库地址:

git remote add origin https://github.com/yourname/your-repo.git

🕵️ 八、查看文件改动:git diff

commit 之前,可用 git diff 查看修改内容:

git diff

📜 九、查看提交历史:git log --oneline

快速查看历史提交记录:

git log --oneline

输出示例:

e3f1a1b 添加登录功能
2c3d9a7 初始提交

🛑 十、忽略某些文件:.gitignore

在项目中,有些文件无需提交到 Git 仓库,例如缓存、编译结果、配置文件等。使用 .gitignore 文件可忽略这些文件:

# 忽略 node_modules 文件夹
node_modules/

# 忽略所有 .log 文件
*.log

# 忽略 .env 环境变量文件
.env

🌿 十一、重命名默认分支:git branch -M main

很多平台(如 GitHub)推荐使用 main 作为主分支名称:

git branch -M main

这样可以将默认分支由 master 改为 main


✅ 总结命令一览表

命令作用
git init初始化仓库
git config设置用户名与邮箱
git status查看当前文件状态
git add添加改动到暂存区
git commit -m提交改动
git push origin main推送代码到远程 main 分支
git diff查看未提交的改动
git log --oneline查看提交历史
.gitignore忽略文件
git branch -M main重命名分支为 main

🧠 写在最后

Git 是每个开发者都必须掌握的技能之一。掌握好这些常用命令,就能覆盖 90% 的使用场景。未来如果你要进行多人协作、分支合并、冲突解决,这些基础就是你的武器库。


觉得实用就点个赞、关注、收藏支持一下吧 🙌