Git+Gitee 新手教程精简归纳版

Git+Gitee 新手教程精简归纳版

面向第一次接触 Git / Gitee 的新手。

目标:看懂 Git 和 Gitee 的关系,配置好提交身份与 SSH,学会创建仓库、克隆、提交、拉取和推送代码。


一、Git 和 Gitee 到底是什么关系?

先记最简单的一句话:

复制代码
Git = 管本地版本
Gitee = 放远程代码
  1. Git

Git 是一个版本控制工具,安装在自己的电脑上。

它主要负责:

  • 记录文件修改
  • 保存一次次提交记录
  • 查看修改历史
  • 回退版本
  • 创建和管理分支
  • 与远程仓库同步代码

  1. Gitee

Gitee(码云)是一个基于 Git 的代码托管平台。

它主要负责:

  • 把代码保存在远程服务器
  • 在线查看代码和提交历史
  • 多台电脑同步代码
  • 团队协作
  • Fork、Pull Request、Issue 等开发协作功能

所以可以简单理解为:

复制代码
自己的电脑
   ↓
  Git
   ↓
本地仓库
   ↓
push / pull
   ↓
 Gitee
   ↓
远程仓库

Gitee 不等于 Git。

Git 是版本控制工具,Gitee 是代码托管平台;日常开发时通常把两者配合起来使用。


二、Git 第一次使用:全局配置

安装 Git后,先设置提交人的名字和邮箱。

复制代码
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

例如:

复制代码
git config --global user.name "xiaoming"
git config --global user.email "xiaoming@qq.com"

查看是否配置成功:

复制代码
git config --global --list

这两个配置是干什么的?

它们不是 Gitee 的登录账号和密码。

它们主要用来标记:

复制代码
这次 commit 是谁提交的?

以后执行:

复制代码
git commit -m "修改登录页面"

Git 会把提交人的名字和邮箱一起记录下来。

如果希望 Gitee 正确关联自己的提交记录,邮箱建议使用 Gitee 账号中已经绑定的邮箱。

注册GItee,安装 Git完成后, 右键打开想要上传Gitee的文件夹,找到open Git Bash here点击(没有点击显示更多选项再找),先设置提交人的名字和邮箱。

小提示:如果终端中引号没有输入完整,可能会出现 > 等等待输入的提示。可以按 Ctrl + C 取消后重新输入。


三、SSH 免密连接:新手真正需要懂什么?

Git 连接 Gitee 常见有两种方式:

复制代码
HTTPS
SSH

简单理解:

复制代码
HTTPS → 通常使用用户名 + 私人令牌进行认证
SSH   → 使用 SSH 公钥 / 私钥进行认证

如果是自己的电脑长期开发,SSH 很方便:配置一次以后,通常不需要每次 push / pull 都重新输入 Gitee 的账号或令牌。


  1. SSH 到底做了什么?

SSH 是一种安全的网络通信协议。

本地电脑通过 SSH 连接 Gitee 时,可以简单理解成下面几个步骤:

复制代码
① 确认远程服务器身份
        ↓
② 协商出本次连接使用的会话密钥
        ↓
③ 使用 SSH 公钥 / 私钥验证你的身份
        ↓
④ 建立加密连接
        ↓
⑤ 在连接中传输 Git 数据

这里最容易理解错的一点是:

RSA / Ed25519 不是拿来直接加密整个 Git 项目文件的。

SSH 建立连接后,大量数据传输主要依靠高效的对称加密保护。

RSA、Ed25519 这类 SSH 密钥,在我们日常配置 Gitee 时最重要的作用是:

复制代码
证明"你确实拥有对应的私钥"

  1. 公钥和私钥

生成 SSH Key 后会得到一对密钥。

以 Ed25519 (密钥)为例:

复制代码
id_ed25519
id_ed25519.pub

区别一定要记住:

文件 是什么 能不能给别人

id_ed25519 私钥 ❌ 绝对不要泄露

id_ed25519.pub 公钥 ✅ 可以上传到 Gitee

可以这样理解:

复制代码
自己的电脑
保留私钥
   ↓
id_ed25519

Gitee
保存公钥
   ↓
id_ed25519.pub

后面连接 Gitee 时,本地使用私钥完成身份认证,Gitee 根据账号中保存的公钥进行验证。

最重要的一句话:

公钥可以公开,私钥必须保密。


  1. RSA 和 Ed25519 怎么选?

SSH 可以使用多种密钥类型,新手最常碰到的是:

复制代码
RSA
Ed25519

Ed25519:新建密钥优先推荐

正常情况下直接使用:

复制代码
ssh-keygen -t ed25519 -C "Gitee"

也可以把备注写成邮箱:

复制代码
ssh-keygen -t ed25519 -C "your-email@example.com"

-C 后面的内容只是一个备注,方便以后辨认这把密钥,并不是必须填写 Gitee 邮箱。

Ed25519 的特点可以简单记成:

  • 密钥较短
  • 速度快
  • 现代 OpenSSH 广泛支持
  • 新建 SSH Key 时很适合优先选择

RSA:仍然可以使用

例如:

复制代码
ssh-keygen -t rsa -b 3072 -C "Gitee"

RSA 并不是"已经不能用了"。

这里经常出现一个容易混淆的概念:

复制代码
RSA 密钥
≠
ssh-rsa(RSA + SHA-1 旧签名方式)

现代 OpenSSH 不推荐旧的 ssh-rsa SHA-1 签名方式,但 RSA 密钥本身仍然可以使用更现代的 SHA-2 签名方式。

新手可以直接记:

复制代码
新建密钥
→ 优先 Ed25519

特殊旧环境兼容
→ 再考虑 RSA

所以本文后面统一使用 Ed25519。


四、配置 SSH:一台电脑通常只需要做一次

  1. 生成 SSH 密钥

执行:

复制代码
ssh-keygen -t ed25519 -C "Gitee"

终端会询问密钥保存位置。

如果没有特殊需求,直接回车使用默认位置即可。

Windows 一般保存在:

复制代码
C:\Users\你的用户名\.ssh\

常见会生成:

复制代码
id_ed25519
id_ed25519.pub

  1. 要不要设置私钥口令?

生成过程中可能看到:

复制代码
Enter passphrase

这是询问:

复制代码
要不要给本地私钥再加一层保护密码?

两种方式都能正常使用。

直接回车:

  • 不给私钥设置口令
  • 使用最方便
  • 适合新手学习环境

设置口令:

  • 私钥文件多一层保护
  • 安全性更好
  • 使用时可能需要输入口令,或者配合 ssh-agent

如果是自己的长期开发电脑,建议根据自己的安全需求决定。


  1. 复制公钥

Windows 可以进入:

复制代码
C:\Users\你的用户名\.ssh\

找到:

复制代码
id_ed25519.pub

用文本编辑器(只要能显示文字就可)打开并完整复制内容。

一般类似:

复制代码
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAA... Gitee

⚠️ 一定注意:

复制代码
id_ed25519.pub

才是可以上传的公钥。

不要把:

复制代码
id_ed25519

这个私钥文件发给任何人。


  1. 把公钥添加到 Gitee

登录 Gitee 后进入账号设置中的 SSH 公钥 页面,添加刚才复制的公钥。

标题可以写成:

复制代码
家里电脑/笔记本/公司电脑

这样以后比较容易判断每一把密钥属于哪台设备。

个人日常开发通常使用账号的 SSH 公钥。

"部署公钥"主要用于仓库或部署场景,不要和个人账号 SSH 公钥混在一起。


  1. 测试 SSH 是否成功

执行:

复制代码
ssh -T git@gitee.com

第一次连接时可能提示是否信任服务器。

确认信息无误后,根据提示输入:

复制代码
yes

如果认证成功,会看到 Gitee 返回的认证成功提示。

如果出现:

复制代码
Permission denied (publickey)

优先检查:

  1. 上传的是不是 .pub 公钥
  2. Gitee 中的公钥是否复制完整
  3. 本地私钥文件是否还存在
  4. 当前使用的密钥是否和上传的公钥属于同一对
  5. 是否使用了正确的 Gitee 账号

五、创建 Gitee 仓库:先判断是哪种情况

这是新手很容易踩坑的地方。

情况 A:本地已经有项目,准备第一次上传 Gitee

例如你的电脑上已经有:

复制代码
my-project/
├── index.html
├── css/
└── js/

这时候建议:

在 Gitee 创建一个空仓库。

先不要初始化 README、.gitignore、LICENSE。

这样本地第一次 push 时最省事,不容易出现"本地和远程都有首次提交"的冲突。


情况 B:准备从 Gitee 开始创建项目

如果还没有本地项目,可以在 Gitee 创建仓库时初始化:

然后直接:

复制代码
git clone 仓库地址

把完整仓库克隆到本地。


README、.gitignore、LICENSE 是什么?

README.md

项目介绍文件。

一般写:

  • 项目是做什么的
  • 怎么安装
  • 怎么运行
  • 有哪些功能

Gitee 仓库主页通常会直接展示 README。


.gitignore

告诉 Git:

复制代码
哪些文件不要提交

例如:

复制代码
缓存文件
编译产物
IDE 配置
临时文件
依赖目录

LICENSE

开源许可证。

它主要说明:

复制代码
别人可以怎样使用、修改、分发你的代码

如果只是自己的私有练习项目,不一定必须添加。


Git 会不会保存空文件夹?

不会。

Git 主要跟踪的是文件内容!!!不是空目录本身。

所以:

复制代码
empty-folder/

如果里面一个文件都没有,提交后远程仓库通常看不到这个目录。

有些项目会在空文件夹里放:

复制代码
.gitkeep

用于让目录能够被 Git 间接保留下来。


六、本地仓库和 Gitee 远程仓库怎么绑定?

  1. git init

如果当前文件夹还不是 Git 仓库:

复制代码
git init

执行以后,会在当前项目中生成隐藏目录:

复制代码
.git

说明当前目录已经变成 Git 仓库。


  1. origin 是什么?

例如:

复制代码
git remote add origin git@gitee.com:用户名/仓库名.git

这里:

复制代码
origin

只是远程仓库地址的一个别名。

它不是 Gitee 的固定关键字,但行业中通常把主要远程仓库叫做 origin。

简单理解:

复制代码
origin
=
这个远程仓库地址的小名

  1. 第一次添加远程仓库

SSH:

复制代码
git remote add origin git@gitee.com:命名空间/仓库名.git

注意:

git remote add origin 一般只在第一次绑定时使用。


  1. origin 已经存在怎么办?

先查看:

复制代码
git remote -v

如果已经有 origin,只是想修改地址:

复制代码
git remote set-url origin git@gitee.com:命名空间/仓库名.git

所以记住:

复制代码
没有 origin
→ git remote add origin ...

已经有 origin
→ git remote set-url origin ...

  1. 删除 origin

    git remote remove origin

然后就可以重新添加。


七、SSH 和 HTTPS 怎么选?

  1. SSH

远程地址一般类似:

复制代码
git@gitee.com:命名空间/仓库名.git

优点:

  • 配置一次后使用方便
  • 不需要每次输入 Gitee 令牌
  • 很适合自己的长期开发电脑

本文更推荐新手长期使用 SSH。


  1. HTTPS

远程地址一般类似:

复制代码
https://gitee.com/命名空间/仓库名.git

例如:

复制代码
git remote add origin https://gitee.com/命名空间/仓库名.git

使用 HTTPS 推送代码时,如果平台要求身份验证,通常使用:

复制代码
用户名 + Gitee 私人令牌

令牌相当于一种专门用于程序访问的凭证。

Gitee 当前可以在个人账号设置中的私人令牌页面生成令牌,并选择实际需要的权限。

⚠️ 私人令牌要像密码一样保管。


不建议把 Token 直接写进远程 URL

不要把日常教程写成:

复制代码
https://用户名:Token@gitee.com/...

虽然某些场景技术上可以这样传递认证信息,但令牌可能暴露在:

  • Git 配置
  • 命令历史
  • 日志
  • 截图

对于普通本地开发,没有必要承担这个风险。

自动化环境需要使用令牌时,也更适合放在:

复制代码
Secret
环境变量
CI/CD 凭据管理

而不是直接硬编码到仓库地址里。


八、三种最常见的 Git 使用场景

场景 1:下载别人已经存在的仓库

直接:

复制代码
git clone 仓库地址

例如 SSH:

复制代码
git clone git@gitee.com:命名空间/仓库名.git

或者 HTTPS:

复制代码
git clone https://gitee.com/命名空间/仓库名.git

执行后 Git 会自动:

复制代码
创建项目文件夹
↓
下载代码
↓
创建 .git
↓
配置 origin

所以 clone 下来的仓库通常不用再执行:

复制代码
git init
git remote add origin ...

场景 2:本地已有项目,第一次上传空的 Gitee 仓库

保证已经连接用户名和邮箱且准备工作密钥绑好❗️❗️❗️

git config --global user.name "你的名字"

git config --global user.email "你的邮箱"

ssh-keygen -t ed25519 -C "任意备注"

绑定远程仓库:

复制代码
git remote add origin git@gitee.com:命名空间/仓库名.git

查看当前分支:

复制代码
git branch --show-current

进入项目文件夹:

复制代码
git init

查看状态:

复制代码
git status

加入暂存区:

复制代码
git add .

生成第一次提交:

复制代码
git commit -m "初始化项目"

第一次推送:

复制代码
git push origin master

场景 3:以后每天修改代码

常见流程:

复制代码
git push origin mastergit add .
git commit -m "说明本次修改内容"
git push

例如:

复制代码
git add .
git commit -m "修复登录按钮样式"
git push origin master

这就是最常用的一套流程:

复制代码
修改文件
  ↓
git add
  ↓
git commit
  ↓
git push

九、多人协作时:pull 很重要

如果只有自己一个人在维护仓库,冲突相对少。

多人同时开发时,远程仓库可能已经被别人更新。

所以更好的习惯是:

复制代码
开始工作前
先同步远程最新代码

例如明确写远程和分支:

复制代码
git pull origin master

然后再修改代码、提交和推送。

常见流程:

复制代码
git pull
git status
git add .
git commit -m "本次更新说明"
git pull origin master

如果你提交期间别人又 push 了新的代码,Git 可能要求你再次同步并解决冲突后才能继续推送。

master 只是示例。

你的仓库也可能使用 main 或其他分支名。

查看当前分支:

复制代码
git branch --show-current

十、最常用 Git 命令速查

初始化仓库

复制代码
git init

查看状态

复制代码
git status

这个命令非常重要。

不知道下一步该做什么时,可以先执行:

复制代码
git status

添加文件到暂存区

添加当前目录全部改动:

复制代码
git add .

添加指定文件:

复制代码
git add index.html

提交

复制代码
git commit -m "本次修改说明"

例如:

复制代码
git commit -m "新增用户登录页面"

提交说明建议写清楚:

复制代码
做了什么?

不要长期全部写成:

复制代码
修改
更新
111
测试

后面查历史会很痛苦。


修改最近一次提交说明

如果刚刚 commit 后发现备注写错了:

复制代码
git commit --amend -m "新的提交说明"

如果这个提交已经推送给其他人使用,就不要随便改历史。


查看远程地址

复制代码
git remote -v

添加远程仓库

复制代码
git remote add origin 仓库地址

修改远程地址

复制代码
git remote set-url origin 新地址

删除远程地址

复制代码
git remote remove origin

查看当前分支

复制代码
git branch --show-current

拉取远程代码

复制代码
git pull

推送

复制代码
git push

第一次建立跟踪关系时可能使用:

复制代码
git push origin master

克隆仓库

复制代码
git clone 仓库地址

查看提交历史

简洁查看:

复制代码
git log --oneline

十一、git add、commit、push 到底有什么区别?

这是新手最容易混的一组。

可以把 Git 想成三个区域:

复制代码
工作区
↓
暂存区
↓
本地仓库
↓
远程仓库 Gitee

git add

复制代码
git add .

意思:

把准备提交的修改放到暂存区。

还没有生成正式版本。


git commit

复制代码
git commit -m "修改说明"

意思:

把暂存区的内容正式保存成一个本地 Git 提交。

这时候已经有版本记录,但还只在自己的电脑。


git push

复制代码
git push

意思:

把本地已经 commit 的提交上传到 Gitee。

所以一定记住:

复制代码
add
↓
准备提交

commit
↓
保存到本地仓库

push
↓
上传到远程仓库

十二、git pull 又是什么?

复制代码
git pull

可以简单理解成:

把远程仓库的新提交拿下来,并整合进当前本地分支。

所以多人协作经常会看到:

复制代码
先 pull
再修改
再 add
再 commit
再 push

十三、为什么 push 会失败?

  1. Permission denied (publickey)

一般是 SSH 认证问题。

检查:

复制代码
ssh -T git@gitee.com

以及:

  • 公钥是否添加到正确 Gitee 账号
  • .pub 内容是否复制完整
  • 本地私钥是否存在

  1. remote origin already exists

说明:

复制代码
origin 已经存在

先看:

复制代码
git remote -v

想修改:

复制代码
git remote set-url origin 新地址

不需要重复:

复制代码
git remote add origin ...

  1. push 被拒绝,提示远程有本地没有的提交

一般代表:

复制代码
远程仓库已经比你的本地更新

先:

复制代码
git pull

根据提示解决可能出现的冲突,再:

复制代码
git push

这也是为什么:

本地已经有项目时,新建 Gitee 仓库推荐先建"空仓库"。

可以减少第一次上传时的麻烦。


  1. HTTPS 提示账号或密码错误

如果 Gitee 当前要求使用私人令牌认证,不要把普通登录密码当成 Git 推送密码。

根据 Gitee 当前账号设置生成私人令牌,然后在 HTTPS 身份验证时按平台提示使用。


十四、不要随便使用 git push -f

网上经常看到:

复制代码
git push -f

-f 是:

复制代码
--force
强制推送

它可能直接覆盖远程分支历史(例如我之前在放笔记的文件夹把本文件夹内容传上仓库,但是我那个仓库之前都是用来装重要的代码的😭)

对于新手和多人项目:

不要把 git push -f 当成解决 push 失败的万能方法。

遇到 push 被拒绝,应该先弄清楚为什么,例如是不是分支不对版:

复制代码
git status
git pull

然后正确处理远程更新或冲突。


十五、Git GUI 要不要学?

Git GUI、IDE 图形界面当然可以使用。

例如某些工具可以直接:

复制代码
扫描修改
↓
加入暂存区
↓
填写提交说明
↓
Commit
↓
Push

图形界面只是把 Git 命令做成了按钮。

建议新手至少先理解这些命令:

复制代码
git status
git add .
git commit -m "说明"
git pull
git push

这样以后换 VS Code、IDEA、WebStorm、Git GUI 等工具时,也知道背后到底发生了什么。


十六、新手最推荐的完整流程

第一次配置电脑

复制代码
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

ssh-keygen -t ed25519 -C "Gitee"

然后:

复制代码
复制 id_ed25519.pub
↓
添加到 Gitee SSH 公钥
↓
测试

ssh -T git@gitee.com

这些通常只需要配置一次。


本地已有项目,第一次上传 Gitee

先在 Gitee 创建空仓库。

然后:

复制代码
git remote add origin git@gitee.com:命名空间/仓库名.git
git init
git add .
git commit -m "初始化项目"
git push origin master

如果你的仓库主分支不是 master,请替换成实际分支名git branch --show-current可查看。


以后日常更新

复制代码
git add .
git commit -m "写清楚本次修改内容"
git push origin master

这几条就是新手最需要熟练掌握的核心流程。


十七、核心要点总结

最后把整篇文章压缩成几句话:

  1. Git 管本地版本,Gitee 保存远程仓库并提供协作功能。
  2. git config user.name / user.email 是提交身份,不是登录密码。
  3. SSH 中公钥上传 Gitee,私钥只留在自己电脑,绝对不能泄露。
  4. 新建 SSH Key 时,普通用户优先使用 Ed25519;RSA 仍然可以使用,不要把 RSA 和旧的 ssh-rsa SHA-1 签名混为一谈。
  5. 本地已有项目准备第一次上传时,Gitee 最好先创建空仓库。
  6. 没有 origin 用 git remote add origin,已经存在则用 git remote set-url origin。
  7. git add 是准备提交,git commit 是保存本地版本,git push 才是上传 Gitee。
  8. 多人协作养成先同步远程代码的习惯。
  9. 分支不一定叫 master,也不一定叫 main,用 git branch --show-current 查看自己的实际分支。
  10. 不要把私人令牌直接写进远程 URL,也不要把 git push -f 当成普通解决办法。

十八、一张流程图记住全部

复制代码
第一次配置电脑
│
├─ 安装 Git
│
├─ git config 配置提交身份
│
├─ ssh-keygen 生成 SSH Key
│
├─ 公钥上传 Gitee
│
└─ ssh -T 测试
        ↓
     配置完成

日常开发
│
├─ git pull
│
├─ 修改代码
│
├─ git status
│
├─ git add .
│
├─ git commit -m "修改说明"
└─ git push
        ↓
   Gitee 更新完成
相关推荐
亿道电子Emdoor2 小时前
【Perforce】Klocwork-kwgcheck图形化界面无法打开如何解决
git·python·github
创世虚拟世界19 小时前
我做了一个 3D 虚拟世界基底,基于这个再做 3D 虚拟世界或者元宇宙,会事半功倍
javascript·人工智能·3d·gitee·虚拟现实
71777721 小时前
有没有国产 Jira?2026 年主流国产替代方案对比与 Gitee 定位解析
gitee·jira
小此方1 天前
「插曲:Git」企业规范篇:DevOps开发模型、Git Flow五类分支设计与测试/预发布/生产环境Bug修复及Hotfix紧急发布流程
git·bug·devops
溪语流沙1 天前
【Web全栈进阶】JWT无状态认证:签发、校验、刷新
前端·git·python·github
OsDepK1 天前
osgit纯图形化git版本管理工具,多人开发团队协作工具,支持Mac与Windows
git
Madison-No71 天前
Git版本控制工具(一)
git
小小小米粒2 天前
重置本地git
大数据·git·elasticsearch
7177772 天前
软件成分分析工具哪个好:2026年主流SCA工具选型与Gitee生态实践指南
gitee