Git 配置与代码推送到 Gitee 完全指南

一份写给自己的操作备忘,涵盖了从零开始配置 Git、生成 SSH 密钥、连接 Gitee 到日常推送的完整流程。

📋 目录

  1. Git 安装与初始配置
  2. 生成 SSH 密钥(免密推送)
  3. Gitee 配置 SSH 公钥
  4. 创建本地仓库并推送到 Gitee
  5. 日常开发标准流程
  6. 常用 Git 命令速查
  7. 常见问题与解决方案

1. Git 安装与初始配置

1.1 安装 Git

Ubuntu/Debian:

sudo apt update
sudo apt install git

CentOS/RHEL:

sudo yum install git

macOS:

brew install git

Windows: 下载 Git for Windows 安装即可。

1.2 配置用户信息(必需)

git config --global user.name "你的用户名"
git config --global user.email "你的邮箱@example.com"

1.3 查看配置

git config --list           # 查看所有配置
git config --global --list  # 查看全局配置

1.4 设置默认分支名(可选)

git config --global init.defaultBranch main

2. 生成 SSH 密钥(免密推送)

SSH 密钥可以实现免密推送,避免每次输入账号密码。

2.1 生成密钥对

ssh-keygen -t rsa -b 4096 -C "你的邮箱@example.com"

执行后会提示:

  • 保存路径:直接回车使用默认 ~/.ssh/id_rsa
  • 密码(passphrase):直接回车留空(免密),或输入密码(更安全)

2.2 查看公钥内容

cat ~/.ssh/id_rsa.pub

复制输出的全部内容(以 ssh-rsa 开头,以邮箱结尾)。

2.3 将私钥添加到 SSH 管理器

ssh-add ~/.ssh/id_rsa

如果提示 Could not open a connection to your authentication agent,先执行:

eval $(ssh-agent)
ssh-add ~/.ssh/id_rsa

2.4 测试 SSH 连接

ssh -T git@gitee.com

成功会显示:

You've successfully authenticated, but GITEE.COM does not provide shell access.

3. Gitee 配置 SSH 公钥

  1. 登录 Gitee
  2. 点击右上角头像 → 设置
  3. 左侧菜单选择 SSH公钥
  4. 点击 添加公钥
  5. 填写标题(如 "我的电脑"),粘贴公钥内容
  6. 点击 确定 保存

4. 创建本地仓库并推送到 Gitee

4.1 在 Gitee 上创建远程仓库

  1. 点击 Gitee 首页的 +新建仓库
  2. 填写仓库名称(如 my-project
  3. 重要:不要勾选 "使用 Readme 文件初始化仓库"
  4. 创建完成后,复制 SSH 地址:

    git@gitee.com:你的用户名/仓库名.git

4.2 本地初始化并关联远程仓库

# 进入项目目录
cd ~/Desktop/my-project

# 初始化 Git 仓库
git init

# 添加所有文件到暂存区
git add .

# 首次提交
git commit -m "首次提交"

# 添加远程仓库地址
git remote add origin git@gitee.com:你的用户名/仓库名.git

# 推送代码(首次需要 -u 建立关联)
git push -u origin main

4.3 如果远程仓库已有文件(如 README)

# 先拉取合并
git pull origin main --allow-unrelated-histories

# 解决可能的冲突后推送
git push origin main

5. 日常开发标准流程

这是最常用的三步骤,每天都会用到:

# 1. 查看当前状态(建议每次操作前都执行)
git status

# 2. 添加修改到暂存区
git add .                    # 添加所有修改
# 或
git add src/App.vue          # 添加指定文件

# 3. 提交到本地仓库
git commit -m "有意义的提交说明"

# 4. 推送到远程仓库
git push                     # 首次推送后直接使用即可

提交信息规范示例

git commit -m "增加当日阅读页数显示"
git commit -m "修复登录按钮点击无响应问题"
git commit -m "优化首页加载速度"
git commit -m "更新 README 文档"

6. 常用 Git 命令速查

状态与查看

命令说明
git status查看工作区状态(哪些文件被修改)
git diff查看具体修改内容
git log --oneline查看简洁的提交历史
git remote -v查看远程仓库地址

分支操作

命令说明
git branch查看本地分支
git branch -a查看所有分支(含远程)
git checkout -b 新分支名创建并切换到新分支
git checkout 分支名切换分支
git merge 分支名合并指定分支到当前分支

撤销与恢复

命令说明
git restore 文件名放弃工作区的修改
git restore .放弃所有修改
git reset HEAD 文件名将文件从暂存区移除
git reset --soft HEAD~1撤销上一次提交(保留修改)
git reset --hard HEAD~1撤销上一次提交(丢弃修改,慎用)

远程操作

命令说明
git push推送到远程
git pull拉取远程更新并合并
git fetch拉取远程更新但不合并
git clone 仓库地址克隆远程仓库到本地

7. 常见问题与解决方案

7.1 error: src refspec master does not match any

原因:本地没有 master 分支(新版 Git 默认用 main

解决

git branch           # 查看当前分支名
git push -u origin main   # 使用正确的分支名

7.2 failed to push some refs

原因:远程仓库有本地没有的提交

解决

git pull origin main --allow-unrelated-histories
git push origin main

7.3 忘记 SSH passphrase

解决:重新生成 SSH 密钥

# 生成新密钥(可留空密码)
ssh-keygen -t rsa -b 4096 -C "你的邮箱"

# 查看并复制新公钥
cat ~/.ssh/id_rsa.pub

# 在 Gitee 添加新公钥后测试
ssh -T git@gitee.com

7.4 Everything up-to-date 但代码没推送

原因:没有新的提交需要推送

解决

git status              # 检查是否有修改未提交
git add . && git commit -m "提交说明"  # 如有修改则提交
git push                # 再次推送

7.5 修改远程仓库地址

# 查看当前地址
git remote -v

# 修改地址
git remote set-url origin 新的仓库地址

7.6 解决合并冲突

git pull 出现冲突时:

  1. 打开冲突文件,搜索 <<<<<<<=======>>>>>>>
  2. 手动保留需要的代码
  3. 删除冲突标记
  4. 保存文件后执行:

    git add .
    git commit -m "解决合并冲突"
    git push

📌 快速参考卡片

# === 首次配置 ===
git config --global user.name "用户名"
git config --global user.email "邮箱"
ssh-keygen -t rsa -b 4096 -C "邮箱"   # 生成密钥
cat ~/.ssh/id_rsa.pub                  # 复制公钥到 Gitee

# === 日常三步骤 ===
git add .
git commit -m "提交说明"
git push

# === 遇到问题时 ===
git status      # 先看状态
git branch       # 看当前分支
ssh -T git@gitee.com  # 测试 SSH 连接

📝 最后更新:2026年4月

这份文档是根据实际操作整理的备忘,遇到问题随时查阅。每次成功推送后,你都可以自信地说:Git,我会了!🎉

发表评论