前言
Git 是目前最主流的分布式版本控制系统,能帮我们追踪代码修改记录、多人协作开发、回滚错误版本,是程序员必备技能。本文从零基础开始,一步步带你掌握 Git 的核心操作,所有命令均可直接在终端执行,新手也能轻松上手。
前期准备(基础环境搭建)
需要事先安装 Git 及相关开发工具。
安装 Git
首先需要在本地安装 Git,不同系统的安装方式如下:
- Windows:访问 Git 官网 下载安装包,一路默认安装(建议勾选「Git Bash Here」,方便右键打开终端);
本文介绍从零开始使用 Git 进行版本控制的基础教程。内容包括 Git 在 Windows、Mac、Linux 上的安装与环境验证,Gitee(码云)账号注册及私人令牌配置,VSCode 编辑器安装与插件设置。核心讲解了 Git 本地仓库初始化、文件暂存与提交、远程仓库推送与拉取操作,以及解决常见认证失败和分支冲突问题。适合初学者快速掌握团队协作开发流程。
Git 是目前最主流的分布式版本控制系统,能帮我们追踪代码修改记录、多人协作开发、回滚错误版本,是程序员必备技能。本文从零基础开始,一步步带你掌握 Git 的核心操作,所有命令均可直接在终端执行,新手也能轻松上手。
需要事先安装 Git 及相关开发工具。
首先需要在本地安装 Git,不同系统的安装方式如下:
brew install git),或直接从官网下载安装包;sudo apt-get install git。安装过程一直点下一步即可,建议不要安装在 C 盘。安装完成后使用 cmd 测试是否安装成功。
# 查看 Git 版本,显示版本号即安装成功
git --version
# 示例输出:git version 2.43.0 (Apple Git-143)
接下来申请一个私人令牌,用来做上传代码时个人认证的密码(请自己留存好,不要泄漏)。




之后打开 cmd,设置你的 git 账号信息。



之后打开 git-bash(在你安装 git 的文件夹里,测试是否设置成功)。


显示名字则说明设置成功。



注册完成后登录自己的账号,进入个人工作台。


接下来我们使用 gitee,先打开 gitee 官网注册一个账号 https://gitee.com/。
Windows 版 VSCode 安装 + 基础配置(精简版)
D:\Software\VSCode),点击「下一步」;Ctrl+Shift+P 打开命令面板;点击左侧「扩展」(快捷键 Ctrl+Shift+X),搜索安装 3 个必备插件:
打开左下角「设置」(齿轮图标),搜索调整 2 个关键项:
code . 直接打开该目录;Ctrl+`` 打开内置终端,Ctrl+Shift+P` 打开命令面板(万能入口)。code .(终端打开文件夹)、Ctrl+Shift+P(命令面板)两个核心操作。
用 VSCode 打开项目,打开终端,如果没有终端的同学可以点击菜单栏的查看——终端。
Git 需要关联用户名和邮箱,用于标识提交记录的作者(建议与 GitHub/Gitee 等平台账号一致):
# 配置全局用户名(替换为你的名字)
git config --global user.name "Your Name"
# 配置全局邮箱(替换为你的邮箱)
git config --global user.email "[email protected]"
# 验证配置是否生效
git config --list
# 输出中能看到 user.name 和 user.email 即为配置成功
关键说明:--global 表示全局配置(所有本地仓库共用);若想为单个仓库配置不同信息,去掉 --global,进入对应仓库目录再执行命令即可。
这是 Git 最基础的本地版本管理,核心流程:「初始化仓库 → 添加文件到暂存区 → 提交版本」。
初始化本地 Git 仓库
先创建项目文件夹,再将其初始化为 Git 可管理的仓库:
# 1. 创建项目文件夹(示例:git-demo)
mkdir git-demo
# 2. 进入该文件夹
cd git-demo
# 3. 初始化 Git 仓库(生成隐藏的.git 目录,存储版本信息)
git init
# 示例输出:Initialized empty Git repository in /Users/xxx/git-demo/.git/
关键说明:git init 仅需执行一次,执行后该文件夹就成为 Git 仓库。
添加文件到暂存区
Git 的版本管理分为「工作区→暂存区→版本库」三层,修改文件后需先添加到暂存区,才能提交到版本库:
# 1. 在 git-demo 中创建测试文件(示例:README.md)
touch README.md
# 2. 编辑文件内容(也可手动编辑)
echo "# Git 教程演示项目" > README.md
# 3. 查看文件状态(新手高频命令,必用)
git status
# 输出提示:"Untracked files: README.md" → 该文件未被 Git 追踪
# 4. 将文件添加到暂存区
git add README.md
# 若要添加所有修改的文件:git add .(. 表示当前目录所有文件)
# 5. 再次查看状态,提示 "Changes to be committed" → 已进入暂存区
git status
小技巧:若添加错文件,执行 git rm --cached 文件名 可从暂存区移除(不会删除本地文件)。
提交版本(生成历史记录)
暂存区的文件需提交到版本库,才会生成永久的版本记录,提交时必须写清晰的提交信息:
# 提交暂存区文件到版本库,-m 后跟提交信息(必填)
git commit -m "初始化项目,添加 README.md"
# 示例输出:
# [main (root-commit) 8a7b6c9] 初始化项目,添加 README.md
# 1 file changed, 1 insertion(+)
# create mode 100644 README.md
# 查看提交历史(关键命令)
git log
# 简化日志输出(只显示哈希值前 7 位 + 提交信息):
git log --oneline
提交规范:提交信息建议简洁明了,如「修复登录功能 bug」「新增用户列表页面」,避免无意义的「修改文件」。
首次推送(需绑定默认分支)
# 首次推送必须指定分支(main 是 Git 默认分支,旧版本可能为 master),-u 表示绑定默认推送分支
git push -u origin main
3.2 登录验证(首次推送必现)
执行推送命令后,会弹出 Gitee 登录窗口(或 Git Bash 中提示输入账号密码):
方式 2:终端输入:若未弹出窗口,Git Bash 会提示:
Username for 'https://gitee.com': 你的 Gitee 用户名/手机号
Password for 'https://你的用户名@gitee.com': 你的 Gitee 登录密码
常见问题:密码输入后提示「认证失败」
原因:Gitee 从 2021 年起,禁止直接使用登录密码通过 HTTPS 方式推送代码,需使用「私人令牌」替代密码。解决步骤: ① 登录 Gitee,点击右上角头像→「设置」→「私人令牌」→「生成新令牌」; ② 勾选令牌权限:至少勾选「projects(仓库权限)」下的「repo」(仓库读写); ③ 填写令牌描述(如「git 推送令牌」),点击「生成」,输入 Gitee 登录密码验证; ④ 复制生成的令牌(仅显示一次,务必保存); ⑤ 回到 Git Bash,重新执行推送命令,密码处输入该「私人令牌」即可。
3.3 验证推送结果
推送成功的终端输出示例:
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 217 bytes | 217.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
To https://gitee.com/你的用户名/git-demo.git
* [new branch] main -> main
Branch 'main' set up to track remote branch 'main' from 'origin'.
刷新 Gitee 仓库详情页,能看到本地提交的文件(如 README.md),说明推送成功。
3.4 后续推送(简化操作)
首次推送绑定默认分支后,后续本地提交代码只需执行:
# 无需指定分支,直接推送
git push
当团队成员修改了 Gitee 远程仓库的代码,你需要将最新代码拉取到本地,保持同步:
4.1 基础拉取命令
# 确保在本地 main 分支(默认分支)
git checkout main
# 拉取 Gitee 远程 main 分支的最新代码
git pull origin main
4.2 拉取场景说明
4.3 克隆远程仓库(全新协作场景)
若你是首次参与项目,无需本地初始化仓库,直接克隆 Gitee 远程仓库到本地:
# 克隆远程仓库到本地(会自动创建同名文件夹)
git clone https://gitee.com/你的用户名/git-demo.git
# 进入克隆后的仓库目录
cd git-demo
# 克隆后已自动关联远程仓库,可直接拉取/推送
git pull
# 拉取最新代码
问题 1:拉取 / 推送时提示「拒绝访问」
问题 2:推送时提示「non-fast-forward」
git pull origin main
git push origin main
git remote add)→首次推送(git push -u origin main,需私人令牌验证)→后续推送 / 拉取(git push/git pull);git clone 克隆仓库,同步代码用 git pull,推送本地修改用 git push。
微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML 转 Markdown 互为补充。 在线工具,Markdown 转 HTML在线工具,online
将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML 转 Markdown在线工具,online
通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online
将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online