很多刚开始用 Git 的朋友,其实都卡在一个很尴尬的位置:知道 git add、git commit、git push 这几个命令,但真到了要从 Gitee 拉一个项目下来改、再推回去的时候,顺序和逻辑经常是乱的。尤其是遇到“推送被拒绝”“冲突一大堆”这种问题,第一反应往往是百度复制粘贴命令,粘贴完也不知道为什么就好了,下次照样踩坑。
这篇内容就是来解决这个问题的。我会以 Gitee 作为远程仓库平台,把“从拉取到推送”的完整工作流一步一步拆开讲,包括每个命令背后的原理、为什么要这么操作、以及哪些地方容易出问题。不管你是刚入门想搭第一个仓库,还是已经用过一段时间但总感觉命令是“背”下来的,这篇应该都能让你把整条链路彻底理顺。
1. 先搞清楚:Git 和 Gitee 各管哪一段
很多新手会把 Git 和 Gitee 当成一个东西,其实它们完全是两个层次。Git 是一个分布式版本控制系统,跑在你本地,负责记录代码的每一次变化,就像给项目拍了一部连续剧,每个 commit 就是一集。而 Gitee 是一个基于 Git 的远程代码托管平台,它解决的是“你的本地仓库怎么跟别人协作、怎么多设备同步”的问题。你可以把 Gitee 理解成一个公共的“存档点”,本地拍完的剧集,推上去备份,别人也能基于这个存档继续拍。
为什么推荐用 Gitee 来走通这个流程?最直接的原因是它的中文界面和国内访问速度对新手足够友好,注册、建仓库、配 SSH 公钥这些操作都有明确的引导。无论你以后用 GitHub、GitLab 还是公司内部的 Git 服务器,命令和思路都是一样的,所以拿 Gitee 练手完全不亏。
1.1 本地仓库的三个区:工作区、暂存区、版本库
想理解 Git 工作流,绕不开这三个区。我见过太多人只把 Git 当成“上传下载工具”,结果一遇到问题就懵。简单说:
- 工作区:就是你本机看到的那些项目文件,你正常编辑代码的地方。
- 暂存区:一个临时存放你“准备提交”的改动的地方,Git 用
git add把工作区的改动放进暂存区,相当于先挑好这一批要交付的文件。 - 版本库:Git 真正记录历史的地方,
git commit会把暂存区的内容生成一个新版本,永久写入版本库。
打个比方:工作区是你的工位,暂存区是公文包,版本库是公司的档案室。你写代码是在工位上写,git add 是把资料装进公文包,git commit 才是正式归档。而 git push 相当于把档案室里的这个副本同步到总部的档案中心(远程仓库)。
理解这三者的关系后,你再看 Git 命令就清楚多了:git status 是看工作区和暂存区的差异,git diff 是看具体改了什么,git log 是看档案室里已经有哪些记录。
1.2 一条命令走完整流程的时代已经过去了
老一辈的习惯是 git add 全部、git commit、git push 三个连招搞定一切。这在单人开发的项目里问题不大,但一旦你开始按功能拆分提交、或者参与多人协作,这种粗糙的用法会埋下很多坑。后面我会详细讲 add 的粒度、commit 的规范、push 前的检查,这些都是从“会敲命令”到“真正会用 Git”的分水岭。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境准备:安装 Git、配置身份、搞定 SSH 免密
在从 Gitee 拉取代码之前,得先把本地环境收拾干净。这一步别嫌麻烦,配置好了,后面每一轮操作都能省好几步。
2.1 安装 Git,各平台都给你列清楚
- Windows:去 Git 官网下载安装包,一路 Next 即可。需要注意安装过程中选择“Use Git from the Windows Command Prompt”或“Use Git and optional Unix tools from the Command Prompt”,方便在 CMD 里直接用 git 命令。
- macOS:如果你装了 Homebrew,一条命令搞定:
bash复制
没装 Homebrew 的话,直接下载官方 pkg 安装包也行。brew install git - Linux(Ubuntu/Debian):
bash复制sudo apt update sudo apt install git -y
安装完在终端敲一下:
bash复制git --version
能输出版本号就说明成功了。这里提醒一句:网上有些教程让你装什么“图形化 Git 客户端”,这种东西可以锦上添花,但千万别觉得装了 GUI 就不用学命令行。命令行是 Git 的根,你要理解工作流还是得靠命令。
2.2 全局配置:姓名和邮箱不是随便填的
Git 每次提交都会记录作者信息,这个信息来自你的全局配置。如果你不配或者配错,commit 记录里就会出现乱起八糟的名字,甚至导致 Gitee 上统计不到你的提交。
bash复制git config --global user.name "你的名字"
git config --global user.email "你的邮箱@example.com"
建议姓名用 Gitee 昵称,邮箱用注册 Git
